我应该在 Django DATABASE ENGINE 中使用哪个 Postgres 值?
Posted
技术标签:
【中文标题】我应该在 Django DATABASE ENGINE 中使用哪个 Postgres 值?【英文标题】:Which Postgres value should I use in Django's DATABASE_ENGINE? 【发布时间】:2011-01-07 03:20:25 【问题描述】:这是我第一次在 Django 中使用 PostgreSQL 8.4.2(我过去一直使用 mysql 或 sqlite3)。我应该为settings.py
、postgresql_psycopg2
或postgresql
中的DATABASE_ENGINE
使用哪个值?它们之间有何不同?
【问题讨论】:
【参考方案1】:Django 1.9 更新
django.db.backends.postgresql_psycopg2
后端在 Django 1.9 中已重命名为 django.db.backends.postgresql
。 (psycopg2
名称仍可用于向后兼容。)
基本上,对于 Django ≥1.9,使用 django.db.backends.postgresql
。
请参阅 Django 文档中有关 ENGINE
setting 的注释。
历史(Django ≤ 1.8)
postgresql_psycopg2
和 postgresql
都使用 psycopg,分别是版本 2 和 1。它们都是使用 PostgreSQL 的 libpq API 作为 C 扩展实现的。
目前推荐postgresql_psycopg2
——原作者已弃用版本1,只制作new releases of version 2。
最初发布 Django 时,psycopg2 还处于测试阶段,不推荐使用,不过早在changed 之前就已经使用了。
【讨论】:
但是你能解释一下只使用 postgresql 有什么缺点吗?以及 postgresql_psycopg2 的一些好处。以上是关于我应该在 Django DATABASE ENGINE 中使用哪个 Postgres 值?的主要内容,如果未能解决你的问题,请参考以下文章
Heroku/Django:没有名为 dj_database_url 的模块
为本地开发设置 django 和 dj-database-url