Django application to provide a web interface to set a yet another django's settings
Project description
Django application to provide a web interface to set a yet another django’s settings.
Basic usage
You can set a setting file containing some key-value pairs like django’s settings.py. Then a web interface to set setting values will be provided automatically.
The value in the setting file is handled as default value of web interface. A new value set from web interface overrides that default value.
The setting file will be like this:
TEST_WEBSETTING = 'default value'
SPAM = 'default spam'
Then you can get setting values from websettings.
>>> from websettings import websettings
>>> websettings.TEST_WEBSETTING
'default value'
After you set overriding value (like ‘after value’) by using web interface…:
>>> websettings.TEST_WEBSETTING
'after value'
Install
This library is registered in PyPI as django-websettings. You can install it as much as you like.
Setting
Websettings file
The position of the setting file is specified by a WEBSETTINGS_MODULE in your project’s settings.py file:
# In your settings.py file.
WEBSETTING_MODULE = 'yourproject.websettings'
Under project directory seems good. You should put these setting key’s by UPPER_CASE.
Web interface URL
The url to web interface to set setting values can be included like this:
# In your urls.py file.
url(r'^websettings/', include('websettings.urls'))
The admin user can only access this page.
Backend
django-websettings is designed to correspond to multiple backend to store settings.
You can specify the back end module to set a WEBSETTINGS_BACKEND in your project’s setting.py file:
# In your settings.py file
WEBSETTINGS_BACKEND = 'path.to.backend_module'
A DB backend (websetting.backends.db) is used by default.
Testing
django-websettings is tested by some environments, check out the Travis CI report.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.