我正在尝试在 Django 1.2中 使用local_setting ,但对我来说不起作用。目前,我只是将 local_settings.py 添加到我的项目中。
settings.py
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 'NAME': 'banco1', # Or path to database file if using sqlite3. 'USER': 'root', # Not used with sqlite3. 'PASSWORD': '123', # Not used with sqlite3. 'HOST': 'localhost', # Set to empty string for localhost. Not used with sqlite3. 'PORT': '', # Set to empty string for default. Not used with sqlite3. } }
local_settings.py
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 'NAME': 'banco2', # Or path to database file if using sqlite3. 'USER': 'root', # Not used with sqlite3. 'PASSWORD': '123', # Not used with sqlite3. 'HOST': 'localhost', # Set to empty string for localhost. Not used with sqlite3. 'PORT': '', # Set to empty string for default. Not used with sqlite3. } }
问题在于 local_settings.py 不会覆盖 settings.py 。怎么了?
您不仅可以添加local_settings.py,还必须显式导入它。
在 最后一刻 你的settings.py的,补充一点:
try: from local_settings import * except ImportError: pass
try / except块在那里,因此当您实际上尚未定义local_settings文件时,Python只会忽略这种情况。