[Django]-Which Postgres value should I use in Django's DATABASE_ENGINE?

49👍

Update for Django 1.9

The django.db.backends.postgresql_psycopg2 backend has been renamed to django.db.backends.postgresql in Django 1.9. (The psycopg2 name can still be used for backwards compatibility.)

Essentially, for Django ≥1.9, use django.db.backends.postgresql.

See note in Django’s documentation for the ENGINE setting.

History (Django ≤ 1.8)

postgresql_psycopg2 and postgresql both use psycopg, versions 2 and 1 respectively. They are both implemented as C extensions using the libpq API to PostgreSQL.

postgresql_psycopg2 is currently recommended — the original author has deprecated version 1 and is only making new releases of version 2.

When Django was originally released, psycopg2 was still in beta and was not recommended, but this has long since changed.

Leave a comment