How to use dj-database-url while connecting with postgresql in heroku using python

10,082

dj-database-url is a utility to help you load your database into your dictionary from the DATABASE_URL environment variable. Heroku uses environment variables for your database and other addons. To begin using your database you'd simply use the below command to setup your DATABASES dictionary:

import dj_database_url
DATABASES['default'] = dj_database_url.config()

And maybe stash DATABASE_URL in your virtualenv activate script.

Share:
10,082
ada.pineda
Author by

ada.pineda

Updated on June 10, 2022

Comments

  • ada.pineda
    ada.pineda almost 2 years

    I'm here because I'm really really new with heroku-python-django-postgresql group. I have googled for a usage for dj-database-url and I don't understand why i have to use it when developing a python application that needs to connect with postgresql. I have added postgresql (dev version) as add-on to my application, but I don't know how to tell to the app that I want it to use my db.

    so, the short question is, How do I indicate to dj-database-url that I want to use my database?

    Thanks for your time and answers, I'll appreciate your help because this is very very urgent!

  • Breedly
    Breedly almost 12 years
    How does one go about setting up their local development environment, so that the settings that heroku requires will work in the local environment?
  • CraigKerstiens
    CraigKerstiens almost 12 years
    If you run export DATABASE_URL=yourlocaloryourremotedburl then it should work the same as Heroku. Additionally if you use foreman which installs with the heroku toolbelt it will automatically export the values in a .env file.
  • Ondrej Slinták
    Ondrej Slinták over 11 years
    Just a note. default keyword argument is optional. If you don't specify it, it looks for DATABASE_URL env variable by default.
  • TonyM
    TonyM about 7 years
    Using this results in a build failure with the error 'NameError: name 'DATABASES' is not defined.'