2015-01-16 52 views
0

我在Heroku上部署了一個django應用程序。 我每次必須在本地運行或在Heroku上部署時,我都使用了一個必須更改的設置文件(主要是更改數據庫)。獲取ImportError:更改設置後沒有名爲wsgi的模塊

我決定改變它,並針對不同的環境使用不同的設置文件(development.py/production.py)創建了一個設置模塊(帶有__init__.py文件的設置文件夾)。我也改變了manage.py文件,以獲得開發設置文件是這樣的:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings.development") 

,並更改wsgi.py搶生產設置文件:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "project.settings.development") 

我當時在那之後,本地開發服務器現在運行良好。 但是當我部署在Heroku上的代碼,我得到

"ImportError: no module name wsgi"

錯誤的Heroku日誌。

我在過去的幾個小時嘗試了幾件事情,但都是徒勞的。 有人可以指導我犯什麼錯誤嗎? 在此先感謝。

注:'項目'是我的項目的名稱。

+0

你可以發佈你的wsgi文件,它也在你的項目/項目/文件夾嗎? – awwester

+0

是的,這是在我的項目/項目/文件夾,這裏的內容 'code' 進口OS os.environ.setdefault( 「DJANGO_SETTINGS_MODULE」, 「project.settings.production」) 從django.core .wsgi import get_wsgi_application from dj_static import Cling application = Cling(get_wsgi_application()) 'code' –

+0

你的Procfile怎麼樣? – awwester

回答

1

在經歷了2個可怕的掙扎日子之後,我發現罪魁禍首是init .py,我不小心把它放到我的項目的主文件夾中,Heroku將它當作模塊處理。刪除初始化 .py解決了這個問題。

相關問題