微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – Django settings.py错误:不支持按文件名导入

我在虚拟环境中运行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']))

现在在此文件添加所需的任何开发设置.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐