"Django: OperationalError - Не удалось перевести имя хоста 'postgres.railway.internal' в адрес"
Я столкнулся с проблемой при попытке подключить мое приложение Django к базе данных PostgreSQL, размещенной на Railway. Я получаю следующую ошибку:
"Django: OperationalError - Could not translate host name 'postgres.railway.internal' to address"`
Я дважды проверил, что имя хоста и учетные данные базы данных верны. Что может вызвать проблему разрешения имени хоста и как ее решить?
Любая помощь будет очень признательна!
Вот моя settings.py
конфигурация:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'railway',
'USER': 'postgres',
'PASSWORD': os.environ.get('DB_PASSWORD'),
'HOST': 'postgres.railway.internal',
'PORT': '5432',
}
}
Я решил проблему с помощью dj-database-url
; вот как я его настроил.
Сначала импортируйте это в свой setting.py
:
import os
from dotenv import load_dotenv
import dj_database_url
также включите это
DATABASES = {
`'default':` `dj_database_url.config(default=os.environ.get('Postgres.DATABASE_URL'),conn_max_age=1800)`
}
Создайте файл .env
для хранения учетных данных URL вашей базы данных. Он должен выглядеть примерно так:
Postgres.DATABASE_URL=Your DATABASE_URL