2009-08-31 43 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')時,它消失了。