It’s my first time using PostgreSQL 8.4.2 with Django(I have always used MySQL or sqlite3 in the past). Which value should I use for DATABASE_ENGINE in settings.py, postgresql_psycopg2 or postgresql? How do they differ from each other?
It’s my first time using PostgreSQL 8.4.2 with Django(I have always used MySQL or
Share
Update for Django 1.9
The
django.db.backends.postgresql_psycopg2backend has been renamed todjango.db.backends.postgresqlin Django 1.9. (Thepsycopg2name 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
ENGINEsetting.History (Django ≤ 1.8)
postgresql_psycopg2andpostgresqlboth use psycopg, versions 2 and 1 respectively. They are both implemented as C extensions using the libpq API to PostgreSQL.postgresql_psycopg2is 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.