Как я могу набрать sh Django код, используя dj-database-url, psycopg2 для Heroku? - PullRequest
0 голосов
/ 17 января 2020

В настоящее время я создаю веб-проект на Django и работаю над подготовкой сайта к развертыванию. Первоначально я развернул сайт на Heroku, используя Sqlite3, код моей базы данных был настроен следующим образом:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

Однако из-за эфемерной файловой системы Heroku я понял, что мне нужно переключиться на Postgres. После нескольких различных руководств я пришел к следующим изменениям в моих настройках. Сначала я удалил «БАЗЫ ДАННЫХ», как упомянуто выше, и заменил его следующим:

import dj_database_url, psycopg2

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': *************,                      
        'USER': **************,
        'PASSWORD': ************************************,
        'HOST': *********************,
        'PORT': '5432',
    }
}

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

Когда я делаю эти изменения, все отлично работает на локальном Django сервере разработки (127.0.0.1:8000), но как только я sh вносил изменения через Git и в Heroku, я пытаюсь открыть свой сайт в Heroku и получаю «Ошибка приложения» и предложение проверить мои журналы. В каком отчете «ModuleNotFoundError: нет модуля с именем dj_database_url» и, аналогично, в любой внешней библиотеке, которую я пытаюсь загрузить в Heroku, возникает эта проблема. Как я могу исправить эту проблему и перевести мой сайт в производство? Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 17 января 2020

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

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