2015-01-16 7 views
0

У меня есть приложение django, развернутое на Heroku. Я использовал один файл настроек, который мне пришлось изменить (в основном, меняя базу данных) каждый раз, когда мне приходилось запускать его локально или развернуть его на Heroku.Получение ImportError: без изменения имени wsgi после изменения настроек

Я решил изменить это и создал модуль настроек (папка настроек с файлом __init__.py) с различными файлами настроек (development.py/production.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 от dj_static import Cling application = Cling (get_wsgi_application()) 'code' –

+0

как насчет вашего Procfile? – awwester

ответ

1

После двух ужасных дней борьбы я понял, что виновником был init .py, который я случайно положил в основную папку моего проекта, и Heroku рассматривал его как модуль. Удаление init .py решила проблему.

Смежные вопросы