1

这看起来很奇怪,但现在已经发生了很多次。我有一些刚刚添加到“项目/项目”目录(与我的 settings.py 目录相同)的 artitrary .py 文件。2-3 个脚本从此脚本导入。

添加脚本并重新启动apache后,django网站专门显示以下错误:

错误来自:

raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % 
     (self.SETTINGS_MODULE, e))
 [Wed Jul 24 08:10:03 2013] [error] [client 127.0.0.1] ImportError: 
Could not import settings 'Project.settings' (Is it on sys.path?): 
No module named settings

有什么建议吗?谢谢你。

这是一个目录repr:

Project/
    Project/
        __init__.py
        settings.py
        urls.py
        views.py
        wsgi.py
        something.py
    App/
        __init__.py
        views.py
        models.py
        tasks.py

我试图通过删除 something.py 及其导入来恢复该站点,但是没有任何效果。

更新:在我放的 wsgi.py 文件中

print os.getcwd() 
# prior to
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Project.settings")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

结果是关闭了!我们在错误的目录中。它指向 /home/user/path/to/django/project 而不是 /home/user,但是它仍然不起作用!这是没有意义的,因为 settings.py 就在那里,它可以公然导入它..

这种随机场景是怎么造成的?而以前没有。有人可以解释一下吗?谢谢。

4

1 回答 1

1

哇,难以置信。我不小心在更高级别的主项目文件夹中有一个额外的不需要的init .py ......这导致 Project.settings 看目录太高了!

于 2013-07-24T18:30:00.637 回答