django:ImportError没有名为myapp.views.hometest的模块

时间:2009-08-31 21:10:13

标签: python django mod-wsgi

我有fecora 11,用mod_wsgi2.5和apache2.2设置django。我可以在本地运行“python manage.py runserver”。它工作正常。我从远程浏览器测试时遇到错误。

感谢您的任何建议和帮助!

4 个答案:

答案 0 :(得分:4)

我刚遇到这个问题。当我将sys.path.append('/path/to/project')添加到我的.wsgi文件时,它就消失了。

答案 1 :(得分:2)

包含Django项目的应用程序是否在$PYTHONPATH中(在服务器上下文中调用Python时)?例如,如果您的Django项目位于/home/wwwuser/web/myproj,那么/home/wwwuser/web应该在您的$PYTHONPATH中。您应该在从Web服务器调用时加载项目的脚本中设置它。

答案 2 :(得分:1)

只是一个猜测,但除非您明确确定您的应用是在PYTHONPATH上,否则您应该将urls.py中的视图指定为myproject.myapp.views.functionname。

否则:

  • 检查你是否正在设置PYTHONPATH,或者是什么。您的项目目录应该在那里。
  • 如果启用django admin(通过取消注释urls.py中默认存在的行),这有用吗?

答案 3 :(得分:1)

  • 应在django.wsgi中设置所有必需的env变量。您可以比较django.wsgi中声明的env和执行./manage runserver的env,并确保它们是相同的。
  • 此外,如果在/usr/local/django/myapp之前有另一个可以通过PYTHONPATH找到的myapp包,则可能会引发ImportError