تعد PostgreSQL أحد أفضل الخيارات لبيئة تخزين آمنة. تعلم كيفية دمجه مع Django.

تضمن إضافة قاعدة بيانات إلى تطبيقك سلامة البيانات وأمانها. PostgreSQL (Postgres) هو نظام إدارة قواعد بيانات بلغة الاستعلامات الهيكلية (SQL) قد ترغب في وضعه في الاعتبار.

يدعم Postgres معظم أنظمة التشغيل الشائعة وهو متوافق مع لغات البرمجة الحديثة. يعالج Postgres أيضًا أنواعًا مختلفة من البيانات والمستندات. مع تزايد الطلب على مهارات SQL ، يعد تعلم تكوين واستخدام PostgreSQL ميزة.

ستتعلم كيفية تثبيت Postgres وتكوينه واستخدامه في تطبيق Django. ستختبر أيضًا وظيفة قاعدة البيانات عن طريق إضافة البيانات وتخزينها واستردادها من قاعدة البيانات.

1. قم بتثبيت PostgreSQL على نظامك

توضح التعليمات التالية كيفية تثبيت Postgres على نظام التشغيل أوبونتو. إذا كنت من مستخدمي Windows ، فيمكنك متابعة هذا دليل خطوة بخطوة لتثبيت Postgres على Windows.

قبل تثبيت Postgres ، قم بتحديث حزم الإصدار وتبعياتها باستخدام الأمر التالي:

$ sudo apt-get update

بعد ذلك ، قم بتثبيت PostgreSQL باستخدام الأمر التالي:

$ sudo apt-get install postgresql postgresql-contrib libpq-dev
instagram viewer

عند مطالبتك بتأكيد التثبيت ، اضغط على ص ل نعم.

اتصل بالخادم باستخدام الأمر التالي:

$ sudo -i -u postgres

ثم استخدم عميل قاعدة البيانات لتحديد إصدار Postgres المثبت.

قم بتشغيل الأمر psql - الإصدار.

postgres@nameofaccount:~$ psql --version

سيظهر الإخراج إصدار Postgres الخاص بك كما هو موضح أدناه:

psql (PostgreSQL) 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)

اخرج من حساب Postgres عن طريق تشغيل ملف مخرج يأمر.

postgres@nameofaccount:~$ exit

2. أنشئ قاعدة بيانات

تحتاج إلى إنشاء قاعدة بيانات تقوم بتوصيلها بتطبيق Django. انتقل مرة أخرى إلى غلاف Postgres وقم بتشغيل الأوامر التالية على التوالي.

sudo -i -u postgres
$ psql

ثم استخدم العميل لإنشاء قاعدة بيانات على الخادم.

postgres=# create database new_db;

يُرجع الخادم المصطلح "إنشاء قاعدة بيانات" عندما يقوم بإنشاء قاعدة بيانات. يمكنك أيضا التحقق من خلال سرد كافة قواعد البيانات في النظام باستخدام الأمر \ ل.

postgres=# \l

هيكل PostgreSQL

مثل قاعدة بيانات SQL النموذجية ، تخزن PostgreSQL البيانات في جداول. تمثل الجداول عناصر / نماذج مختلفة في التطبيق. تحتوي الجداول على عدد ثابت من الأعمدة والصفوف.

يحتوي كل جدول على عمود معين يسمى المفتاح الأساسي ، وهو معرف فريد لكل صف مخزن في الجدول. قد يحتوي الجدول أيضًا على مفتاح خارجي يربطه بالمفتاح الأساسي لجدول آخر.

تحدد المفاتيح الخارجية العلاقات بين جدولين.

بعد ذلك ، تحتاج إلى إنشاء تطبيق Django وربط قاعدة البيانات. لكن أولاً ، قم بالتثبيت psycopg2 للمساعدة في توصيل التطبيق وقاعدة البيانات.

3. قم بتثبيت مكتبة Django و Psycopg2

لتوصيل Postgres بتطبيق Django ، تحتاج إلى تثبيت ملف psycopg2 مكتبة. هذه تبعية Postgres تساعد على الاتصال والتواصل مع Django.

قم بتشغيل الأمر التالي للتثبيت psycopg2 و جانغو:

$ pipenv install psycopg2 Django

4. قم بإنشاء تطبيق Django

تحتاج إلى إنشاء تطبيق Django الذي سيستخدم قاعدة بيانات Postgres. أولاً ، قم بإنشاء مشروع يسمى الميبوما لدعم التطبيق. يقوم Django بإنشاء تبعيات وإعدادات التطبيق اللازمة لتشغيل التطبيق تلقائيًا.

قم بإنشاء مجلد يسمى بوما ووتش وانتقل إليه بالأوامر التالية:

$ mkdir Boma-watch
$cd Boma-watch

ثم قم بإنشاء مشروع Django بالأمر التالي:

$ django-admin startproject myboma .

تأكد من إضافة النقطة في نهاية الأمر ، وإلا فسيقوم Django بإنشاء مجلد جديد لإيواء المشروع.

بعد ذلك ، قم بإنشاء تطبيق جديد يسمى بوما بالأمر التالي:

$ django startapp boma

إذا لم تكن قد عملت مع Django من قبل ، يمكنك ذلك ابدأ بدليل المبتدئين إلى Django. بعد تشغيل التطبيق على المتصفح للتأكد من أنه يعمل ، ستقوم بتوصيله بقاعدة البيانات في القسم التالي.

5. ربط قاعدة البيانات بتطبيق Django

ستقوم الآن بتوصيل تطبيق Django بقاعدة البيانات التي أنشأتها باتباع الخطوات التالية:

الخطوة 1: تغيير إعدادات المشروع لاستخدام Postgres

يجب عليك تغيير إعدادات المشروع لتوصيل تطبيق Django بـ Postgres. انتقل إلى المشروع settings.py ملف. ثم قم بتغيير ملف قواعد بيانات إعدادات لإضافة تكوينات Postgres الخاصة بك.

استبدل ملف مستخدم و كلمة المرور مع الخاص بك بسكل اسم المستخدم و كلمة السر.

#...
DATABASES = {
'default': {
'ENGINE':'django.db.backends.postgresql',
'NAME':'new_db',
'USER':'morine',
'PASSWORD':'password',
}
}

الخطوة الثانية: تحديث المنطقة الزمنية

بعد ذلك ، في settings.py ملف ، قم بتعيين ملف وحدة زمنية لتعكس موقعك. تم تكوين مشاريع Django مسبقًا بالتوقيت العالمي المنسق (UTC).

TIME_ZONE = Africa/Nairobi

الخطوة 3: قم بإنشاء نموذج

إنشاء حساب تعريفي النموذج في تطبيقك. ستستخدم فئة النموذج هذه لإنشاء جداول في قاعدة البيانات لتخزين اسم التطبيق والبيانات الحيوية.

classProfile(models.Model):
name = models.CharField(max_length=30)
bio = models.TextField(max_length=100)

def__str__(self):
return self.name

الخطوة 4: بدء الترحيل

قم بتشغيل الأوامر التالية لبدء الترحيل:

(virtual)$ python manage.py makemigrations boma 
(virtual)$ python manage.py migrate

سيبدو الترحيل الناجح على النحو التالي:

python manager.py يهاجر يختار الأمر التطبيق من ملف INSTALLED_APPS الإعدادات> ملفات Models.py وإنشاء جداول لكل نموذج. لقد نجحت في توصيل Postgres بتطبيقك.

الآن ، يمكنك اختبار أوامر CREATE و READ و UPDATE و DELETE (CRUD) في التطبيق الخاص بك.

6. اختبار أوامر CRUD على التطبيق الخاص بك

ستمكنك واجهة برمجة تطبيقات Python من Django من تنفيذ بعض عمليات قاعدة بيانات CRUD. تربط API الوظائف بالنماذج للسماح لك بمعالجة قاعدة البيانات.

افتح قشرة Python في مشروع Django باستخدام الأمر التالي:

(virtual)$ python manage.py shell

سيفتح الأمر وحدة تحكم حيث يمكنك اختبار عمليات CRUD.

إنشاء عملية

أولاً ، قم باستيراد ملف حساب تعريفي نموذج من عارضات ازياء الوحدة النمطية باستخدام الأمر التالي:

 from boma.models import Profile

ثم قم بإنشاء مثيل لملف حساب تعريفي فئة وتمرير البيانات الخاصة بك.

 prof1 = Profile.objects.create(name ='Ken',bio ='I am a Scorpio')

بعد ذلك ، احفظ البيانات في قاعدة البيانات.

prof1.save()

اقرأ العملية

بعد إنشاء البيانات في قاعدة البيانات وحفظها ، يمكنك الاستعلام عنها لاسترداد البيانات المحفوظة.

استخدم ال Profile.objects.all () لاسترداد جميع البيانات الموجودة في حساب تعريفي الجدول في قاعدة البيانات.

Profile.objects.all() #outputs 

يمكنك أيضًا استرداد كائن واحد باستخدام ملف المفتاح الأساسي أو ص. هذه هي الأرقام المخصصة لكل عنصر محفوظ في قاعدة البيانات.

Profile.objects.get(pk = 1) #outputs 

عملية التحديث

يمكنك تحديث البيانات المحفوظة باستخدام الأمر التالي:

Profile.objects.filter(id = 1).update(name ='Kim';) #outputs 1

للتحقق مما إذا تم تحديث الاسم ، قم بتنفيذ الأمر التالي:

Profile.objects.filter(id = 1) #outputs 

حذف العملية

يمكنك حذف العناصر المحفوظة باستخدام الأمر التالي:

Profile.objects.filter(id = 1).delete() #outputs (1, {app.Profile: 1})

لتأكيد الحذف ، قم بتشغيل الأمر التالي:

Profile.objects.filter(id = 1) #outputs 

يمكنك رؤية مجموعة الاستعلام فارغة ، مما يشير إلى أن البيانات لم تعد موجودة في قاعدة البيانات.

لماذا تستخدم PostgreSQL؟

تعد Postgres واحدة من أكثر قواعد بيانات SQL تقدمًا. تضمن تصميماته مفتوحة المصدر تحسينات مستمرة في الأداء.

إدارة أحمال العمل أسهل ، وتصبح فرز قاعدة البيانات أفضل مع كل إصدار. أحد أسباب شعبية Postgres هو أنها متوافقة مع معظم لغات البرمجة وأنظمة التشغيل الحديثة.