我有一个Django项目,其中包含一个"config"文件夹,里面有一个settings_dev.py
文件,这是我的设置文件。
如果我尝试用manage.py做任何事情,它会抱怨它找不到我的设置文件,即使我通过--settings
选项显式地提供它,例如
python manage.py syncdb --settings=config.settings_dev
Error: Can't find the file 'settings.py' in the directory containing 'manage.py'. It appears you've customized things.
You'll have to run django-admin.py, passing it your settings module.
但是,如果我重命名我的"配置"文件夹到"设置",它工作正常。例如
python manage.py syncdb --settings=settings.settings_dev
工作好。
我还需要为它指定什么才能知道我的设置文件夹实际上被命名为config?
查看manage.py。它尝试导入设置而不是conf.你必须修改你的manage.py文件
在项目文件夹中创建一个通用的settings.py,指向配置模块。不要忘记配置文件夹中的__init__.py
。这可能比修改manage.py.
#!/usr/bin/env python
from django.core.management import setup_environ
try:
import config.settings as settings
except ImportError:
import sys
sys.stderr.write("Couldn't find the settings.py module.")
sys.exit(1)
setup_environ(settings)
看看这个答案:
如果在settings.py中存在导入错误,也会发生此错误。
https://stackoverflow.com/questions/6036599/bizarre-error-importing-settings-in-django =