If you look at dbsettings (which again, might be dead - i don't know) it
solves a lot of those problems; settings are tied into the "sites" module,
and are presented to the user in a very friendly way. The problem of db
migration is still there, but I can envision an import/export to XML (or
something) functionality where you can get/transfer all settings (or just
for one/a few apps) to another installation.
I've forked my own copy of dbsettings for the project I'm currently working
on (as I said, it was last touched 2007, and out-of-the-box incompatible),
and improving, so I might try to get it polished and more integrated w/
contrib.admin, and see how it works.

Jared

On Fri, Feb 26, 2010 at 11:00 AM, Wes Winham <winha...@gmail.com> wrote:

> I'd love to see a better way of managing settings in the core of
> django. It's a real pain point sometimes for writing and using
> pluggable applications and there's a wide range of ways that
> application developers try to tackle it. Some have basically no
> settings, some plan on users reading the documentation and defining
> all required settings, some have a way of using defaults that can be
> overridden and some have hacked together ways of using the database
> for some settings (I think ReviewBoard does something like this, or
> did). The problem I see is that the *best* way hasn't really bubbled
> to the surface as far as I can tell. Kind of like how database
> migrations are a hard problem, settings management seems kind of
> tricky.
>
> Are there things stopping someone from making a really good app for
> managing settings and letting that bubble up to the de facto solution
> like with South? If there are, maybe removing those things would be a
> good target before trying to build the actual solution in contrib. Of
> course, this is probably not the best time for discussing this since
> everyone is trying to get 1.2 out the door, but I'd love to see this
> area improved down the road.
>
> My specific pain points:
>  * With a given app, it's a crapshoot to find where they define their
> internal settings (some use app/conf/settings.py, some app/conf/
> default.py, some app/default.py etc)
>  * It's hard to tweak settings on deployment for different
> environments. Using a settings_local.py that gets included is a
> workable solution, but it requires you to maintain a monolithic file.
> Something like the conf.d/*.conf debian style of configuration might
>
> Pinax is having a similar discussion right now. Maybe something will
> come out of that project that can be applied/adapted to some later
> version of django. That might be a place to apply some development if
> anyone is interested in working towards better settings management.
>
> http://groups.google.com/group/pinax-core-dev/browse_thread/thread/d9401468ea3c8edf
>
> -Wes
>
> On Feb 26, 2:11 am, Jared Forsyth <ja...@jaredforsyth.com> wrote:
> > I have been looking around for a way of managing user-configurable
> > application settings, and the only solution I have found is dbsettings,
> > which looks like it hasn't been touched in 3 years.
> > So, I would like to know: is dbsettings dead? Or is there a different
> > generally accepted method for having user-friendly app settings? (e.g.
> don't
> > require code modification)
> >
> > I think that this idea is pretty essential to django's ease of use; there
> > are many applications which have (or should have) settings which only
> effect
> > UI or minor behavioral issues, and shouldn't require a server restart to
> > effect (and imo shouldn't require server write access). It seems that the
> > most viable solution would be to have a database managed settings system
> (in
> > the form of a .contrib module) which would manage this. It also seems
> that
> > having such an infrastructure in place would really encourage app
> > maintainers to have more settings, thereby making the apps even more
> > portable.
> >
> > Any thoughts?
> >
> > Thanks,
> > Jared
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django developers" group.
> To post to this group, send email to django-develop...@googlegroups.com.
> To unsubscribe from this group, send email to
> django-developers+unsubscr...@googlegroups.com<django-developers%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/django-developers?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-develop...@googlegroups.com.
To unsubscribe from this group, send email to 
django-developers+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en.

Reply via email to