PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Déploiement de Django sur Heroku (Erreur Psycopg2)

MODIFIÉ :

Comme @mipadi l'a souligné ici (http://stackoverflow.com/questions/13001031/django-heroku-settings-injection/13092534), cela peut en fait être aussi simple que ceci :

import dj_database_url

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

Cela fonctionne si vous avez défini une variable d'environnement DATABASE_URL. heroku:pg_promote vous y emmène. Détails ci-dessous

Assurez-vous d'avoir Postgres sur votre Heroku

heroku addons:add heroku-postgresql:dev

Étape 1 :déterminez l'URL de votre base de données

heroku config | grep POSTGRESQL

La sortie ressemblera à ceci :

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

Étape 2 :Saisissez le nom du paramètre de l'étape précédente (par exemple, HEROKU_POSTGRESQL_ROSE_URL) et placez-le dans votre fichier de paramètres comme ceci

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

[UPDATE] Comme Ted l'a souligné, il existe un moyen de promouvoir l'URL de couleur vers la variable DATABASE_URL :

heroku pg:promote HEROKU_POSTGRESQL_ROSE_URL

Vos paramètres de base de données peuvent alors utiliser DATABASE_URL par opposition à des URL colorées plus exotiques

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

Bob est ton oncle