В настоящее время я создаю веб-проект на 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, возникает эта проблема. Как я могу исправить эту проблему и перевести мой сайт в производство? Любая помощь будет принята с благодарностью.