Я работал над проектом Django локально, и я наконец решил выпустить его для AWS Elasti c Beanstalk, и в процессе развертывания я получаю сообщение об ошибке:
из django .core.wsgi import get_wsgi_application
Нет модуля с именем 'django'
Я прошел официальный учебник от AWS а также учебник от Real Python Я проверил, что Django фактически установлен, запустив pip freeze
и возвращает
...
колорама == 0.3.9
Джанго == 2.2.9
django -целий == 3.3.1
....
Также я много работал с Django локально. Но просто чтобы убедиться, что я выполнил следующую команду и получил этот вывод:
(. Venv) $ source .venv / bin / activ
(. Venv) $ pip install django
Требование уже выполнено: django in ./.venv/lib/python3.7/site-packages (2.2.9)
Требование уже выполнено: sqlparse in. /.venv/lib/python3.7/site-packages (от django) (0.3.0)
Требование уже выполнено: pytz in ./.venv/lib/python3.7 / site-packages (от django) (2019.3)
И когда я запускаю:
(.venv) $ python
Python 3.7.4 (default, Jul 9 2019, 18:13:23)
[Clang 10.0.1 (clang-1001.0.46.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> print(django.__file__)
.../code/core_web_app/.venv/lib/python3.7/site-packages/django/__init__.py
Извините, если это закончилось, но большую часть поста я посмотрел У вас есть комментарии, спрашивающие, установлен ли Django или говорящий, что Django должен быть установлен. Я предполагаю, что Django установлен на моей локальной машине, но не на моем пульте. Кроме того, я отметил эту запись и убедился, что мой файл require.txt также находится в моей директории root. Ниже вы можете найти дополнительную информацию.
.ebextensions / django .config
option_settings:
"aws:elasticbeanstalk:application:environment":
DJANGO_SETTINGS_MODULE: "myapp.settings"
"PYTHONPATH": "/opt/python/current/app/src:$PYTHONPATH"
"aws:elasticbeanstalk:container:python":
WSGIPath: src/myapp/wsgi.py
NumProcesses: 3
NumThreads: 20
"aws:elasticbeanstalk:container:python:staticfiles":
"/static/": "www/static/"
src / myapp / wsgi.py
import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myapp.settings')
application = get_wsgi_application()
Любая помощь будет принята с благодарностью, так как я впервые работаю с этим, и я предполагаю, что где-то совершаю действительно глупую ошибку.