ModuleNotFoundError: Нет модуля с именем 'django_app' в развертывании heroku
Здравствуйте, наставники и старшие разработчики. Я сейчас занимаюсь этой проблемой 5-7 часов, пытаясь решить ее, Эта проблема возникает во время развертывания моего приложения на Digital Oceans Apps и вот логи, которые прислал Heroku пожалуйста, помогите мне разобраться
2022-10-03T10:37:01.047248352Z [2022-10-03 10:37:01 +0000] [1] [INFO] Starting gunicorn 20.1.0
2022-10-03T10:37:01.048342704Z [2022-10-03 10:37:01 +0000] [1] [INFO] Listening at:
http://0.0.0.0:8080 (1)
2022-10-03T10:37:01.048420287Z [2022-10-03 10:37:01 +0000] [1] [INFO] Using worker: sync
2022-10-03T10:37:01.105225067Z [2022-10-03 10:37:01 +0000] [16] [INFO] Booting worker with
pid: 16
2022-10-03T10:37:01.121367774Z [2022-10-03 10:37:01 +0000] [16] [ERROR] Exception in worker
process
2022-10-03T10:37:01.121405181Z Traceback (most recent call last):
2022-10-03T10:37:01.121410503Z File "/workspace/.heroku/python/lib/python3.10/site-
packages/gunicorn/arbiter.py", line 589, in spawn_worker
2022-10-03T10:37:01.121414404Z worker.init_process()
2022-10-03T10:37:01.121419137Z File "/workspace/.heroku/python/lib/python3.10/site-```
packages/gunicorn/workers/base.py", line 134, in init_process
2022-10-03T10:37:01.121423724Z self.load_wsgi()
2022-10-03T10:37:01.121428153Z File "/workspace/.heroku/python/lib/python3.10/site-
packages/gunicorn/workers/base.py", line 146, in load_wsgi
2022-10-03T10:37:01.121431187Z self.wsgi = self.app.wsgi()
2022-10-03T10:37:01.121434180Z File "/workspace/.heroku/python/lib/python3.10/site-
packages/gunicorn/app/base.py", line 67, in wsgi
2022-10-03T10:37:01.121438157Z self.callable = self.load()
2022-10-03T10:37:01.121441663Z File "/workspace/.heroku/python/lib/python3.10/site-
packages/gunicorn/app/wsgiapp.py", line 58, in load
2022-10-03T10:37:01.121462270Z return self.load_wsgiapp()
2022-10-03T10:37:01.121465690Z File "/workspace/.heroku/python/lib/python3.10/site-
packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
2022-10-03T10:37:01.121469061Z return util.import_app(self.app_uri)
2022-10-03T10:37:01.121472387Z File "/workspace/.heroku/python/lib/python3.10/site-
packages/gunicorn/util.py", line 359, in import_app
2022-10-03T10:37:01.121475619Z mod = importlib.import_module(module)
2022-10-03T10:37:01.121482753Z File
"/workspace/.heroku/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
2022-10-03T10:37:01.121486027Z return _bootstrap._gcd_import(name[level:], package, level)
2022-10-03T10:37:01.121490349Z File "<frozen importlib._bootstrap>", line 1050, in
_gcd_import
2022-10-03T10:37:01.121493850Z File "<frozen importlib._bootstrap>", line 1027, in
_find_and_load
2022-10-03T10:37:01.121497304Z File "<frozen importlib._bootstrap>", line 992, in
in my requirements.txt
asgiref==3.4.1
beautifulsoup4==4.11.1
binary==1.0.0
dj-database-url==1.0.0
Django==3.2.15
django-bootstrap-v5==1.0.11
django-crispy-forms==1.13.0
django-heroku==0.3.1
django-request==1.6.1
gunicorn==20.1.0
importlib-metadata==4.8.3
Pillow==8.4.0
psycopg2==2.9.3
psycopg2-binary==2.9.3
python-dateutil==2.8.2
pytz==2022.2.1
six==1.16.0
soupsieve==2.3.2.post1
sqlparse==0.4.2
typing-extensions==4.1.1
whitenoise==5.3.0
zipp==3.6.0
Вы получили ошибку module not found, потому что не добавили свое приложение в установленные приложения в файле настроек.
Для добавления сделайте следующее:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'accounts',
'users',
'django_app', #added here
'blog',
'memberships',
'dashboard',
'crispy_forms',
'bootstrap5',
]
В команде run в настройках Digital Ocean нужно изменить django_app
в gunicorn --worker-tmp-dir /dev/shm django_app.wsgi
(из учебника Digital Ocean), чтобы она указывала на то приложение, в котором находится файл wsgi.py вашего приложения Django.