Ошибка при развертывании проекта python Django на Heroku: ModuleNotFoundError: Нет модуля с именем 'core'
Я пытаюсь развернуть проект django на Heroku и столкнулся с этой ошибкой в самом низу:
В попытке предоставить некоторую информацию, внутри моего procfile
web: gunicorn --pythonpath backend.core backend.core.wsgi --log-file -
release: python backend.manage.py makemigrations - - no-input
Внутренние требования.txt
asgiref==3.5.0
attrs==21.4.0
beautifulsoup4==4.10.0
bs4==0.0.1
certifi==2021.10.8
charset-normalizer==2.0.12
Django==4.0.3
django-core==1.4.1
django-cors-headers==3.11.0
django-filter==21.1
djangorestframework==3.13.1
gunicorn==20.1.0
idna==3.3
jsonlines==3.0.0
lxml==4.8.0
pytz==2021.3
requests==2.27.1
soupsieve==2.3.1
sqlparse==0.4.2
urllib3==1.26.8
virtualenv-tools3==2.0.5
whitenoise==6.0.0
И я установил свой проект как
FE_APP/
runtime.txt
requirements.txt
Procfile
backend/
scraper.py
Под FE_APP/backend/
api/
core/
static/
db.sqlite3
manage.py
и в FE_APP/backend/core/
__init__.py
errorlog
settings.py
urls.py
wsgi.py
В FE_APP/backend/api/ у меня есть свой views.py, который импортирует из core.settings пару переменных.
from core.settings import REALMS, GAME_TITLES
Но я сомневаюсь, что это связано с тем, почему это развертывание выводит меня из строя. Я могу развернуть на своей локальной машине просто отлично, но heroku продолжает выдавать мне эту ошибку. Я чувствую, что я так близок к развертыванию, что же происходит?
Хотя я все еще не полностью решил проблему развертывания, так как мне еще предстоит разобраться с другим препятствием (о котором я, вероятно, сделаю еще один пост), я думаю, что решил эту проблему, добавив в файл wsgi.py модуль whitenoise и реализацию ниже:
wsgi.py
import os
from django.core.wsgi import get_wsgi_application
from whitenoise import WhiteNoise
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'feh.settings')
application = get_wsgi_application()
application = WhiteNoise(application)