我在虚拟环境中运行Django(使用virtualenv),我正在尝试添加自定义开发环境设置文件,以便在我开发时简化应用程序配置.我的计划是使用两行代码执行此操作
if os.environ.get('DEVELOPMENT', None):
from login import settings_dev
我也尝试过import settings_def和login.settings_dev import *.我的settings_dev.py文件与settings.py文件位于同一目录中,我的应用程序位于名为login的文件夹中.当我运行python login / manage.py syncdb时,我收到此错误:
Error: Import by filename is not supported.
我的搜索不断提出DJANGO_SETTINGS_MODULE(虽然我不确定它是如何发挥所有这一点 – 第一个Django app:]),所以只是一个FYI它在我的settings.py文件中设置如下:
os.environ['DJANGO_SETTINGS_MODULE'] = 'login.settings'
我也尝试在我的终端中导出它,但我得到了同样的错误.
有谁知道我怎么能解决这个/我在这里做错了什么?
最佳答案 在原始settings.py中,最后:
try:
from settings_dev import *
except ImportError:
pass
在settings.py所在的目录中创建settings_dev.py,并在其中,在最顶部添加以下两行:
import sys
globals().update(vars(sys.modules['settings']))
现在在此文件中添加所需的任何开发设置.