envsettings
- Update django settings from environment variables by updating
sys.modules - Mostly using
ast.literal_evalto convert string to python object. - Tested by converting all default django settings to string and back to python object and then running django command.
todo
- simplify code
- verify settings after they are casted to python object
- Usage:
- in
myproject.settings:import os import sys import ast from djangobuk_envsettings import update_from_env update_from_env( sys.modules[__name__], # default prefix for all variables pre='DJANGO_', # settings that can be updated from env # by default all settings are allowed (this option overrides) allowed=[ 'SECRET_KEY', 'SITE_ID', ], # optional # extra settings and their types (to be used with extra_allowed) extra_mapping={ 'DATABASE_PATH': ast.literal_eval, }, # optional # extra settings that can be updated from env extra_allowed=[ 'DATABASE_PATH', ] ) # nothing more required DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': DATABASE_PATH, } }
- in
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file djangobuk_envsettings-0.4.1.tar.gz.
File metadata
- Download URL: djangobuk_envsettings-0.4.1.tar.gz
- Upload date:
- Size: 5.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
807333471e2f31a713c775387bef05cde7205b8c8f6010bbdb39cf29c7078bd7
|
|
| MD5 |
de30d47a749f077d63012504bfbe8e33
|
|
| BLAKE2b-256 |
7a7526c69fba96c19ea65f66c9d104542559b622c12313095919f47aa32f7ee7
|