2009-08-31 45 views

回答

2

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

+0

我应该把 PYTHONPATH '[' /user/local/django/myproject'+sys.path]” 在httpd.conf中的Apache? – icn 2009-08-31 21:48:33

+0

或者我应该把东西放在django.wsgi中? – icn 2009-08-31 21:53:50

+1

我已经有 sys.path.append( '的/ usr /本地/ Django的/ myproject的') 在django.wsgi – icn 2009-08-31 21:59:29

1

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

否则:

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

django admin不工作太... – icn 2009-08-31 23:44:37

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

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