ما هي قيمة postgres التي يجب أن أستخدمها في Django Database_Engine؟
-
21-09-2019 - |
سؤال
إنها المرة الأولى التي أستخدم فيها PostgreSQL 8.4.2 مع Django (لقد استخدمت دائمًا MySQL أو SQLite3 في الماضي). ما هي القيمة التي يجب أن أستخدمها DATABASE_ENGINE
في settings.py
, postgresql_psycopg2
أو postgresql
؟ كيف يختلفون عن بعضهم البعض؟
المحلول
تحديث لـ Django 1.9
ال django.db.backends.postgresql_psycopg2
وقد الخلفية أعيدت تسميتها ل django.db.backends.postgresql
في Django 1.9. (ال psycopg2
لا يزال من الممكن استخدام الاسم للتوافق للخلف.)
في الأساس ، بالنسبة إلى Django ≥1.9 ، استخدم django.db.backends.postgresql
.
انظر الملاحظة في وثائق Django لـ ENGINE
إعداد.
التاريخ (Django ≤ 1.8)
postgresql_psycopg2
و postgresql
كلاهما استخدام psycopg, ، الإصدارات 2 و 1 على التوالي. يتم تنفيذ كلاهما كملحقات C باستخدام واجهة برمجة تطبيقات LIBPQ إلى postgresql.
postgresql_psycopg2
يوصى حاليا - قام المؤلف الأصلي بإهمال الإصدار 1 وهو يصنع فقط إصدارات جديدة من الإصدار 2.
عندما تم إصدار Django في الأصل ، كان Psycopg2 لا يزال في بيتا ولم يُنصح به ، لكن هذا منذ فترة طويلة تغير.