【发布时间】:2011-07-04 10:43:44
【问题描述】:
我遇到了一个奇怪的 Django 问题,使用 mod_wsgi 运行 Django。
Django 正在寻找urls.py,然后说:
ViewDoesNotExist: Could not import app.views. Error was: No module named views
奇怪的是,如果我有
import app
在urls.py 的导入语句中我没有收到错误(直到它像上面一样命中app.views),但如果我有
from app import views
在我的导入语句中,我得到一个错误。
我的 python 路径,如 Django 调试信息中所示,其中包含包含文件夹和应用程序文件夹。如果我从命令行运行 Python,我可以导入 app.views 就好了。我可以使用python manage.py runserver 运行应用程序就好了。
我也尝试过从urls.py 打印到stderr 的python 路径,并且其中包含应用程序的路径。
会发生什么?
我的第一个想法是,app 文件夹中可能没有__init__.py,但确实有。
谢谢!
更新
如果我尝试在 runserver 应用程序中
print app.__file__
>> \path\to\app\__init__.py
但是在wsgi版本中,我只看到:
print app.__file__
>> \path\to\app\
换句话说,就是找不到__init__.pyc。
【问题讨论】:
标签: python django django-views mod-wsgi django-wsgi