PostgreSQL on turvalise salvestuskeskkonna jaoks üks parimaid valikuid. Siit saate teada, kuidas seda Djangoga integreerida.

Andmebaasi lisamine rakendusele tagab andmete terviklikkuse ja turvalisuse. PostgreSQL (Postgres) on struktureeritud päringukeele (SQL) andmebaasihaldussüsteem, mida võiksite kaaluda.

Postgres toetab enamikku populaarsetest operatsioonisüsteemidest ja ühildub kaasaegsete programmeerimiskeeltega. Postgres tegeleb ka erinevate andmete ja dokumenditüüpidega. Kuna SQL-i oskused on väga nõutud, on PostgreSQL-i konfigureerimise ja kasutamise õppimine eeliseks.

Saate teada, kuidas installida, konfigureerida ja kasutada Postgresi Django rakenduses. Samuti saate testida andmebaasi funktsionaalsust, lisades, salvestades ja hankides andmeid andmebaasist.

1. Installige oma süsteemi PostgreSQL

Järgmised juhised selgitavad kuidas installida Postgres Ubuntu operatsioonisüsteemi. Kui olete Windowsi kasutaja, saate seda järgida samm-sammult juhend Postgresi installimiseks Windowsi.

Enne Postgresi installimist värskendage versioonipakette ja nende sõltuvusi järgmise käsuga:

instagram viewer
$ sudo apt-get update

Järgmisena installige PostgreSQL järgmise käsuga:

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

Kui teil palutakse installida kinnitada, vajutage nuppu Y jaoks Jah.

Ühendage serveriga järgmise käsu abil:

$ sudo -i -u postgres

Seejärel kasutage installitud Postgresi versiooni määramiseks andmebaasi klienti.

Käivitage käsk psql -- versioon.

postgres@nameofaccount:~$ psql --version

Väljund näitab teie Postgresi versiooni, nagu allpool näidatud:

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

Väljuge Postgresi kontost, käivitades käsu väljuda käsk.

postgres@nameofaccount:~$ exit

2. Looge andmebaas

Peate looma andmebaasi, mille ühendate Django rakendusega. Navigeerige tagasi Postgresi kesta ja käivitage järjestikku järgmised käsud.

sudo -i -u postgres
$ psql

Seejärel kasutage klienti serveris andmebaasi loomiseks.

postgres=# create database new_db;

Server tagastab andmebaasi loomisel termini CREATE DATABASE. Saate ka kontrollida loetledes kõik andmebaasid süsteemis käsuga \l.

postgres=# \l

PostgreSQL-i struktuur

Nagu tavaline SQL-i andmebaas, salvestab PostgreSQL andmed tabelitesse. Tabelid esindavad rakenduse erinevaid üksusi/mudeleid. Tabelites on kindel arv veerge ja ridu.

Igal tabelis on konkreetne veerg, mida nimetatakse primaarvõtmeks, iga tabelis salvestatud rea kordumatu identifikaator. Tabelil võib olla ka võõrvõti, mis ühendab selle teise tabeli primaarvõtmega.

Võõrvõtmed määravad kahe tabeli vahelised seosed.

Järgmiseks peate looma Django rakenduse ja linkima andmebaasi. Kuid kõigepealt installige psycopg2 rakenduse ja andmebaasi ühendamiseks.

3. Installige Django ja Psycopg2 raamatukogu

Postgresi ühendamiseks Django rakendusega peate installima psycopg2 raamatukogu. See on Postgresi sõltuvus, mis aitab Djangoga ühendust luua ja sellega suhelda.

Käivitage installimiseks järgmine käsk psycopg2 ja Django:

$ pipenv install psycopg2 Django

4. Looge Django rakendus

Peate looma Django rakenduse, mis kasutab Postgresi andmebaasi. Esiteks looge projekt nimega müboomi rakenduse toetamiseks. Django loob automaatselt rakenduse käitamiseks vajalikke sõltuvusi ja rakenduse sätteid.

Looge kaust nimega Boma-kell ja navigeerige selle juurde järgmiste käskudega:

$ mkdir Boma-watch
$cd Boma-watch

Seejärel looge Django projekt järgmise käsuga:

$ django-admin startproject myboma .

Lisage käsu lõppu kindlasti punkt, vastasel juhul loob Django projekti majutamiseks uue kausta.

Järgmisena looge uus rakendus nimega boma järgmise käsuga:

$ django startapp boma

Kui te pole varem Djangoga koostööd teinud, saate seda teha alustage Django algajatele mõeldud juhendiga. Pärast rakenduse käivitamist brauseris selle toimimise kinnitamiseks ühendate selle järgmises jaotises andmebaasiga.

5. Ühendage andmebaas Django rakendusega

Nüüd ühendate oma Django rakenduse loodud andmebaasiga järgmiste sammude abil.

1. samm: muutke projekti sätteid Postgresi kasutamiseks

Django rakenduse Postgresiga ühendamiseks peate muutma projekti sätteid. Liikuge projekti juurde settings.py faili. Seejärel muutke ANDMEBAASID Postgresi konfiguratsioonide lisamiseks.

Asendage KASUTAJA ja PAROOL sinuga psql kasutajanimi ja parool.

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

2. samm: ajavööndi värskendamine

Järgmisena settings.py faili, määrake Ajavöönd et kajastada teie asukohta. Django projektid on eelkonfigureeritud UTC ajavööndiga.

TIME_ZONE = Africa/Nairobi

3. samm: looge mudel

Loo Profiil mudelit oma rakenduses. Kasutate seda mudeliklassi andmebaasis tabelite loomiseks rakenduse nime ja bioandmete salvestamiseks.

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

def__str__(self):
return self.name

4. samm: alustage migreerimist

Migreerimise alustamiseks käivitage järgmised käsud:

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

Edukas üleviimine näeb välja järgmine:

python manage.py migreerida käsk valib rakenduse hulgast INSTALLED_APPS seaded > models.py failid ja loob iga mudeli jaoks tabelid. Olete Postgresi edukalt oma rakendusega ühendanud.

Nüüd saate oma rakenduses testida käske CREATE, READ, UPDATE ja DELETE (CRUD).

6. Testige oma rakenduses CRUD-i käske

Django Pythoni API võimaldab teil teha mõningaid CRUD andmebaasi toiminguid. API ühendab funktsioonid mudelitega, et saaksite andmebaasiga manipuleerida.

Avage Pythoni kest Django projektis, kasutades järgmist käsku:

(virtual)$ python manage.py shell

Käsk avab konsooli, kus saate testida CRUD-i toiminguid.

Loo operatsioon

Esiteks importige Profiil mudel pärit mudelid moodul, kasutades järgmist käsku:

 from boma.models import Profile

Seejärel looge eksemplar Profiil klassi ja edastage oma andmed.

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

Järgmisena salvestage andmed andmebaasi.

prof1.save()

Lugege operatsiooni

Pärast andmebaasis andmete loomist ja salvestamist saate salvestatud andmete hankimiseks teha päringu.

Kasuta Profile.objects.all() et hankida kõik failis olevad andmed Profiil tabel andmebaasis.

Profile.objects.all() #outputs 

Samuti saate ühe objekti alla laadida, kasutades a esmane võti või pk. Need on numbrid, mis on määratud igale andmebaasi salvestatud üksusele.

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

Värskendusoperatsioon

Salvestatud andmeid saate värskendada järgmise käsuga:

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

Nime värskendamise kontrollimiseks käivitage järgmine käsk:

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

Kustutusoperatsioon

Salvestatud üksusi saate kustutada järgmise käsuga:

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

Kustutamise kinnitamiseks käivitage järgmine käsk:

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

Näete, et päringukomplekt on tühi, mis näitab, et andmeid pole enam andmebaasis.

Miks kasutada PostgreSQL-i?

Postgres on üks arenenumaid SQL-andmebaase. Selle avatud lähtekoodiga versioonid tagavad pideva jõudluse paranemise.

Töökoormuste haldamine on lihtsam ja andmebaaside sortimine muutub iga versiooniga paremaks. Üks põhjusi, miks Postgres on populaarne, on see, et see ühildub enamiku kaasaegsete programmeerimiskeelte ja operatsioonisüsteemidega.