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;

השרת מחזיר את המונח CREATE DATABASE כאשר הוא יוצר מסד נתונים. אתה יכול גם לבדוק לפי פירוט כל מאגרי המידע במערכת עם הפקודה \l.

postgres=# \l

מבנה PostgreSQL

כמו מסד נתונים SQL טיפוסי, PostgreSQL מאחסן נתונים בטבלאות. הטבלאות מייצגות פריטים/דגמים שונים באפליקציה. לטבלאות יש מספר קבוע של עמודות ושורות.

לכל טבלה יש עמודה מסוימת הנקראת מפתח ראשי, מזהה ייחודי לכל שורה המאוחסנת בטבלה. לטבלה עשוי להיות גם מפתח זר המחבר אותה למפתח הראשי של טבלה אחרת.

המפתחות הזרים מגדירים את היחסים בין שתי טבלאות.

לאחר מכן, עליך ליצור אפליקציית Django ולקשר את מסד הנתונים. אבל קודם כל תתקין psychopg2 כדי לעזור בחיבור האפליקציה ומסד הנתונים.

3. התקן את ספריית Django ו-Psychopg2

כדי לחבר את Postgres לאפליקציית Django, עליך להתקין את psychopg2 סִפְרִיָה. זוהי תלות Postgres שעוזרת להתחבר ולתקשר עם Django.

הפעל את הפקודה הבאה להתקנה psychopg2 ו ג'נגו:

$ pipenv install psycopg2 Django

4. צור אפליקציית Django

עליך ליצור אפליקציית Django שתשתמש במסד הנתונים של Postgres. ראשית, צור פרויקט בשם myboma כדי לתמוך באפליקציה. Django מקרין באופן אוטומטי תלות והגדרות אפליקציה הדרושות להפעלת האפליקציה.

צור תיקיה בשם בומה-שעון ונווט אליו עם הפקודות הבאות:

$ mkdir Boma-watch
$cd Boma-watch

לאחר מכן, צור פרויקט Django עם הפקודה הבאה:

$ django-admin startproject myboma .

הקפד להוסיף את הנקודה בסוף הפקודה, אחרת Django תיצור תיקיה חדשה כדי לשכן את הפרויקט.

לאחר מכן, צור אפליקציה חדשה בשם בומה עם הפקודה הבאה:

$ django startapp boma

אם לא עבדת עם ג'נגו בעבר, אתה יכול התחל עם מדריך למתחילים ל-Django. לאחר הפעלת האפליקציה בדפדפן כדי לאשר שהיא פועלת, תחבר אותה למסד הנתונים בסעיף הבא.

5. חבר את מסד הנתונים לאפליקציית Django

כעת תחבר את אפליקציית Django שלך למסד הנתונים שיצרת באמצעות השלבים הבאים:

שלב 1: שנה את הגדרות הפרויקט לשימוש ב-Postgres

עליך לשנות את הגדרות הפרויקט כדי לחבר את אפליקציית Django ל-Postgres. נווט אל הפרויקט settings.py קוֹבֶץ. לאחר מכן, שנה את מסדי נתונים הגדרות כדי להוסיף את תצורות Postgres שלך.

החלף את ה מִשׁתַמֵשׁ ו סיסמה איתך psql שם משתמש וסיסמא.

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

שלב 2: עדכן את אזור הזמן

לאחר מכן, ב- 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 manage.py להעביר הפקודה בוחרת את האפליקציה מה- INSTALLED_APPS הגדרות > קבצי models.py ויוצר טבלאות עבור כל דגם. חיברת בהצלחה את Postgres לאפליקציה שלך.

כעת, אתה יכול לבדוק את הפקודות CREATE, READ, UPDATE ומחק (CRUD) ביישום שלך.

6. בדוק פקודות CRUD באפליקציה שלך

ה-API של 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 

אתה יכול גם לאחזר אובייקט בודד באמצעות a מפתח ראשי אוֹ pk. אלו הם מספרים המוקצים לכל פריט שנשמר במסד הנתונים.

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 פופולרי היא משום שהיא תואמת לרוב שפות התכנות ומערכות ההפעלה המודרניות.