KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'd like to expose some (app-specific) settings to the admin interface, so users can change them comfortably and also not have to restart Django. How should I go about this? I checked out the applications on http://djangopackages.com/grids/g/live-setting/ (btw django-constance was the most appealing) but really what all these apps are doing is storing values in a database, providing a web interface to change them, and caching. Aren't the first two features already built into Django? The biggest drawbacks I see are that none of the apps are drop-in replacements for the old location of these settings (settings.py), and require me to migrate to their notation, and often add another context processor to access them in templates. Couldn't I just do this? Create a model for my settings (this gives me the various types and validation) Instantiate one such object to hold my settings (this allows the users to edit them in the admin interface) - I could dump defaults as fixtures like for other models Wrap settings.py so it makes a database query for my settings - http://www.loose-bits.com/2011/04/extending-django-settings-with-derived.html From my current, naive point of view the only drawbacks I see would be: Adding or changing the available settings requires a schema migration (south). - I can live with that. I have a model with possibly multiple instances but really only need a singleton. - That could actually be a useful feature at some point. Performance/Caching: Looking at http://code.djangoproject.com/svn/django/trunk/django/conf/ I'd have to put a little bit of cleverness into the s
Tags (comma-separated)
Save Edits
Cancel