2011-07-07 60 views
1

我幾乎完成了我的django web應用程序,但我從不使用shell。通過更改代碼,重新啓動服務器和重新加載頁面來檢查某些內容很困難。但我不能配置Django設置環境或類似的東西。 我做的:Django - 不可能完成的任務 - 另一個環境問題

export DJANGO_SETTINGS_MODULE=my_project.settings 

然後:

import os 

os.environ['DJANGO_SETTINGS_MODULE'] = 'my_project.settings' 

然後我嘗試:

>>> os.environ['DJANGO_SETTINGS_MODULE'] 
'my_project.settings' 

但是當我嘗試:

>>> python 
>>> import urls 

我得到:

ImportError: Could not import settings 'my_project.settings' (Is it on sys.path?): No module named mysite.settings 

,當我嘗試:

>>> django-admin.py shell 

我得到:

Error: Could not import settings 'my_project.settings' (Is it on sys.path?): No module named mysite.settings 

我正因爲如此沮喪。我使用的服務器有mod_passanger。有人知道問題的原因是什麼?也許mod_passanger?或者我是doiung錯了什麼?

回答

3

你不應該這樣做任何manage.py腳本會爲您完成這一切,這就是您進入項目後始終應該使用它(而不是django-admin.py)的原因。

只是這樣做:

./manage.py shell 

就是這樣。

+0

它的工作原理。謝謝。現在我感到安心。 Uff ... :) – krzyhub

0

./manage.py shell --settings=mysite.settings

+0

django-admin.py shell --settings = my_project.settings given ---> 錯誤:無法導入設置'myproject.settings'(是否在sys.path?上):沒有名爲my_project.settings的模塊 – krzyhub

1

這工作

export DJANGO_SETTINGS_MODULE=mysite.settings 

但是,只有當你也有PYTHONPATH設置正確。

PYTHONPATH必須包含包含mysite的目錄。

另外。 mysite目錄必須具有__init__.py文件才能使其成爲正確的軟件包。

+0

>>> python >>> if「/ home/my_account/my_project /」:print「good」 ... good 而且我的my_project目錄有__init__.py文件,但是django-admin.py shell仍然沒有不工作 – krzyhub

+0

@Cris:'my_project'或'mysite'?哪個是正確的名字? –

+0

我把我所有的文件放在名爲「my_project」的目錄中 對不起,我看到我在上面寫錯了。 – krzyhub

相關問題