On Wed, Mar 10, 2010 at 6:31 PM, Matt Boersma <[email protected]> wrote:
> On Wed, Mar 10, 2010 at 7:51 AM, Brian Rosner <[email protected]> wrote:
>>
>> On Mar 10, 2010, at 7:16 AM, Joan Miller wrote:
>>
>>> It's a disaster from the maintenance view point. If it were not so,
>>> then people would not be proposing to refactor the settings as has
>>> been made in Pinax, or from multiple posts so many times.
>>
>> Like I mentioned in the post you made to the pinax-core-dev mailing list the
>> problem Pinax is trying to solve is *not* because the settings are written
>> in Python, but rather loading order and scope. Many projects quickly realize
>> that running a Django project with a single settings file is nearly
>> impossible with different environments all interacting with a single code
>> base. Some projects turn to importing a local_settings.py file which is what
>> Pinax currently does. This has worked wonderful for us for years.
>> [snip]
>
> The local_settings.py convention (thanks, Pinax!) has worked well for
> us in an environment with multiple dev, test, and production server
> tiers. We solve the DATABASE_PASSWORD= issue by only allowing the
> DBAs access to local_settings.py on production, and having an
> svn:ignore rule that prevents anyone from accidentally checking it in
> to version control.
>
This is a MySQL specific tip, but we store our DB configuration in a
local my.cnf, which can be made unreadable by developers/admins, like
so:
[djangodb]
database = abc
user = defghijk
password = lmnop
host = qrs.tuv.wxyz
We then instruct django to read from that my.cnf:
DATABASE_OPTIONS = { 'read_default_file' : DB_CONF_PATH,
'read_default_group' : 'djangodb' }
or 1.2-rc syntax, with a slave:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'OPTIONS': {
'read_default_file' : DB_CONF_PATH,
'read_default_group' : 'djangodb'
}
},
'slave': {
'ENGINE': 'django.db.backends.mysql',
'OPTIONS': {
'read_default_file' : DB_CONF_PATH,
'read_default_group' : 'slave_djangodb'
}
},
}
Cheers
Tom
--
You received this message because you are subscribed to the Google Groups
"Django developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/django-developers?hl=en.