
Comoga/django-constance - Dynamic Django settings - superchink
https://github.com/comoga/django-constance
======
rheide
Why is it necessary to specify the database backend to use? Django already
abstracts it away, so why should I make the (same) choice twice?

(I know it's not for caching because a database cache backend is mentioned
separately).

~~~
j_baker
You may not (probably dont even?) want to use the same choice for storing
configuration as you want to use for storing general application data.

------
ldng
In the same vein yet different : <http://django-
configurations.readthedocs.org/en/latest/>

Although, it looks like you can not have both the classic settings.py and
django-constance at the same time, right ?

It would be nice to be able to have both backend, one for config var that
hardly changes and one for settings that can by customize by someone not
versed in IT through an admin page.

------
adamzap
Is this much different than creating an admin-enabled extra_settings table
with key and value fields?

I'm probably missing something.

~~~
j_baker
I would assume that this module is using redis's pub/sub capabilities to push
configuration out to django app servers whereas creating an extra_settings
table would likely require polling.

------
trowbrds
As a shameless plug, here's how we at Review Board have solved this problem:
[http://blog.chipx86.com/2008/08/05/django-development-
with-d...](http://blog.chipx86.com/2008/08/05/django-development-with-djblets-
dynamic-site-configuration/)

------
eli
So is this smart about multi-site Django installs? It would be awesome if it
could figure out the correct Site object and settings from the hostname.

(I'm experimenting with django-dynamicsites-lite to do this but, while it
appears to work, it is awfully hacky.)

------
j_baker
I wonder why this is using Redis as opposed to something like zookeeper which
is made for things like this?

<http://zookeeper.apache.org/>

~~~
bryanh
I would guess that most folks have already found some use for Redis already so
its likely installed.

------
kmfrk
Is this recommended over storing settings as environment variables?

~~~
j_baker
I don't know about "recommended over" but it may perhaps be "a more advanced
way to". It depends upon your needs.

Lets say that you're running a service that has 20 servers running a Django
app, and you want to be able to update the configuration for these apps in
real time. Can this be done easily using environment variables?

(Serious question. I haven't actually thought much about this, but my instinct
is that it will be more difficult.)

