这是我第一次使用PostgreSQL 8.4.2和Django(过去我一直使用MySQL或sqlite3)。我应该在DATABASE_ENGINE
,settings.py
或postgresql_psycopg2
中使用postgresql
的哪个值?他们如何彼此不同?
答案 0 :(得分:46)
Django 1.9中django.db.backends.postgresql_psycopg2
后端已被重命名到django.db.backends.postgresql
。 (psycopg2
名称仍可用于向后兼容。)
基本上,对于Django≥1.9,请使用 django.db.backends.postgresql
。
请参阅Django文档中关于ENGINE
setting的说明。
postgresql_psycopg2
和postgresql
分别使用psycopg,版本2和版本1。它们都是使用libpq API实现为PostgreSQL的C扩展。
postgresql_psycopg2
- 原作者已弃用版本1且仅生成new releases of version 2。
当Django最初发布时,psycopg2仍处于测试阶段且不推荐,但这已经很久了changed。