Η PostgreSQL είναι μια από τις καλύτερες επιλογές για ένα ασφαλές περιβάλλον αποθήκευσης. Μάθετε πώς να το ενσωματώσετε με το Django.

Η προσθήκη μιας βάσης δεδομένων στην εφαρμογή σας διασφαλίζει την ακεραιότητα και την ασφάλεια των δεδομένων. Το PostgreSQL (Postgres) είναι ένα σύστημα διαχείρισης βάσης δεδομένων δομημένης γλώσσας ερωτημάτων (SQL) που ίσως θέλετε να εξετάσετε.

Το Postgres υποστηρίζει τα περισσότερα από τα δημοφιλή λειτουργικά συστήματα και είναι συμβατό με σύγχρονες γλώσσες προγραμματισμού. Η Postgres χειρίζεται επίσης διάφορους τύπους δεδομένων και εγγράφων. Με τις δεξιότητες SQL σε υψηλή ζήτηση, η εκμάθηση της ρύθμισης και της χρήσης της PostgreSQL αποτελεί πλεονέκτημα.

Θα μάθετε πώς να εγκαταστήσετε, να ρυθμίσετε και να χρησιμοποιήσετε το Postgres σε μια εφαρμογή Django. Θα δοκιμάσετε επίσης τη λειτουργικότητα της βάσης δεδομένων προσθέτοντας, αποθηκεύοντας και ανακτώντας δεδομένα από τη βάση δεδομένων.

1. Εγκαταστήστε την PostgreSQL στο σύστημά σας

Οι παρακάτω οδηγίες εξηγούν

instagram viewer
πώς να εγκαταστήσετε το Postgres στο λειτουργικό σύστημα Ubuntu. Εάν είστε χρήστης των Windows, μπορείτε να το ακολουθήσετε οδηγός βήμα προς βήμα για την εγκατάσταση του Postgres στα Windows.

Πριν εγκαταστήσετε το Postgres, ενημερώστε τα πακέτα εκδόσεων και τις εξαρτήσεις τους με την ακόλουθη εντολή:

$ sudo apt-get update

Στη συνέχεια, εγκαταστήστε την PostgreSQL με την ακόλουθη εντολή:

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

Όταν σας ζητηθεί να επιβεβαιώσετε την εγκατάσταση, πατήστε Υ Για Ναί.

Συνδεθείτε στον διακομιστή χρησιμοποιώντας την ακόλουθη εντολή:

$ 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 όταν δημιουργεί μια βάση δεδομένων. Μπορείτε επίσης να κάνετε check by απαριθμώντας όλες τις βάσεις δεδομένων στο σύστημα με την εντολή \μεγάλο.

postgres=# \l

Δομή της PostgreSQL

Όπως μια τυπική βάση δεδομένων SQL, η PostgreSQL αποθηκεύει δεδομένα σε πίνακες. Οι πίνακες αντιπροσωπεύουν διαφορετικά στοιχεία/μοντέλα σε μια εφαρμογή. Οι πίνακες έχουν σταθερό αριθμό στηλών και γραμμών.

Κάθε πίνακας έχει μια συγκεκριμένη στήλη που ονομάζεται πρωτεύον κλειδί, ένα μοναδικό αναγνωριστικό για κάθε σειρά που είναι αποθηκευμένη στον πίνακα. Ένας πίνακας μπορεί επίσης να έχει ένα ξένο κλειδί που το συνδέει με το πρωτεύον κλειδί ενός άλλου πίνακα.

Τα ξένα κλειδιά ορίζουν τις σχέσεις μεταξύ δύο πινάκων.

Στη συνέχεια, πρέπει να δημιουργήσετε μια εφαρμογή Django και να συνδέσετε τη βάση δεδομένων. Αλλά πρώτα, εγκαταστήστε psycopg2 για να βοηθήσει στη σύνδεση της εφαρμογής και της βάσης δεδομένων.

3. Εγκαταστήστε τη Βιβλιοθήκη Django και Psycopg2

Για να συνδέσετε το Postgres σε μια εφαρμογή Django, πρέπει να εγκαταστήσετε το psycopg2 βιβλιοθήκη. Αυτή είναι μια εξάρτηση Postgres που βοηθά στη σύνδεση και την επικοινωνία με τον Django.

Εκτελέστε την ακόλουθη εντολή για εγκατάσταση psycopg2 και Django:

$ 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 στο παρελθόν, μπορείτε ξεκινήστε με έναν οδηγό για αρχάριους για το 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 management.py μετεγκατάσταση εντολή επιλέγει την εφαρμογή από το INSTALLED_APPS ρυθμίσεις > αρχεία models.py και δημιουργεί πίνακες για κάθε μοντέλο. Έχετε συνδέσει επιτυχώς το Postgres στην εφαρμογή σας.

Τώρα, μπορείτε να δοκιμάσετε τις εντολές CREATE, READ, UPDATE και DELETE (CRUD) στην εφαρμογή σας.

6. Δοκιμάστε τις εντολές CRUD στην εφαρμογή σας

Το Python API του Django θα σας επιτρέψει να εκτελέσετε ορισμένες λειτουργίες βάσης δεδομένων CRUD. Το API συνδέει τις συναρτήσεις με τα μοντέλα για να σας επιτρέψει να χειριστείτε τη βάση δεδομένων.

Ανοίξτε το κέλυφος Python στο έργο Django χρησιμοποιώντας την ακόλουθη εντολή:

(virtual)$ python manage.py shell

Η εντολή θα ανοίξει μια κονσόλα όπου μπορείτε να δοκιμάσετε τις λειτουργίες CRUD.

Δημιουργία Λειτουργίας

Πρώτα, εισάγετε το Προφίλ μοντέλο από το μοντέλα module χρησιμοποιώντας την ακόλουθη εντολή:

 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 πρωτεύων κλειδί ή πκ. Αυτοί είναι αριθμοί που εκχωρούνται σε κάθε στοιχείο που είναι αποθηκευμένο στη βάση δεδομένων.

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 είναι δημοφιλές είναι επειδή είναι συμβατό με τις περισσότερες σύγχρονες γλώσσες προγραμματισμού και λειτουργικά συστήματα.