Не удается подключиться к базе данных Django в Heroku - PullRequest
0 голосов
/ 03 сентября 2018

Я пытаюсь развернуть приложение Django в Heroku и подключить его к базе данных, используя dj-database-url . Приложение работает нормально локально (с python manage.py runserver), но и команда heroku local web, и развертывание Heroku завершаются неудачно с сообщением:

9:47:06 PM web.1 |  ModuleNotFoundError: No module named 'dj_database_url'

Однако, когда я захожу в оболочку Heroku и пытаюсь установить пакет, он говорит, что требование уже выполнено

~ $ pip install dj-database-url
Requirement already satisfied: dj-database-url in ./.heroku/python/lib/python3.6/site-packages

Как примечание, у меня есть другой модуль под названием django_hosts, который я использую, и у меня нет проблем. Вот мой requirements.txt файл:

dj-database-url==0.5.0
Django==2.1.1
django-hosts==3.0
psycopg2==2.7.5
pytz==2018.5

А вот строки в файле настроек production.py, который использует dj_database_url:

import dj_database_url
...
db_from_env = dj_database_url.config()
DATABASES['default'].update(db_from_env)

Не знаю, поможет ли это, но вот мои установленные приложения:

I

NSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',

    # third party
    'django_hosts',

    # custom apps
    'analytics',
    'shortener',
]

Я подумал, что, возможно, мне нужно добавить dj_databse_url под django_hosts, но это не сработало.

Если вам нужна дополнительная информация, пожалуйста, дайте мне знать в комментариях. Ура!

1 Ответ

0 голосов
/ 05 сентября 2018

Мое решение для этой проблемы состояло в том, чтобы добавить зависимость в мой Pipfile, а затем заново сгенерировать Pipfile.lock. Это было необходимо, несмотря на то, что в файле require.txt уже была указана зависимость.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...