sql >> Base de Datos >  >> RDS >> PostgreSQL

Implementación de Django en Heroku (Error de Psycopg2)

EDITADO:

Como @mipadi ha señalado aquí (http://stackoverflow.com/questions/13001031/django-heroku-settings-injection/13092534), en realidad puede ser tan simple como esto:

import dj_database_url

DATABASES = {'default' : dj_database_url.config() }

Esto funciona si tiene un conjunto de variables de entorno DATABASE_URL. heroku:pg_promote te lleva allí. Detalles a continuación

Asegúrese de tener Postgres en su Heroku

heroku addons:add heroku-postgresql:dev

Paso 1:descubre la URL de tu base de datos

heroku config | grep POSTGRESQL

La salida se verá así:

HEROKU_POSTGRESQL__URL:postgres://usuario:[email protected]:5432/blabla

Paso 2:tome el nombre de configuración del paso anterior (por ejemplo, HEROKU_POSTGRESQL_ROSE_URL) y colóquelo en su archivo de configuración así

DATABASES = {'default': dj_database_url.config(default=os.environ["HEROKU_POSTGRESQL_ROSE_URL"])}

[ACTUALIZAR] Como ha señalado Ted, hay una manera de promocionar la URL de color a la variable DATABASE_URL:

heroku pg:promote HEROKU_POSTGRESQL_ROSE_URL

La configuración de su base de datos puede usar DATABASE_URL en lugar de URL de colores más exóticos

DATABASES = {'default': dj_database_url.config(default=os.environ["DATABASE_URL"])}

Bob es tu tío