PostgreSQL to jeden z najlepszych wyborów dla bezpiecznego środowiska przechowywania. Dowiedz się, jak zintegrować go z Django.
Dodanie bazy danych do aplikacji zapewnia integralność i bezpieczeństwo danych. PostgreSQL (Postgres) to system zarządzania bazą danych w języku SQL (Structured Query Language), który warto rozważyć.
Postgres obsługuje większość popularnych systemów operacyjnych i jest kompatybilny z nowoczesnymi językami programowania. Postgres obsługuje również różne typy danych i dokumentów. Przy dużym zapotrzebowaniu na umiejętności SQL, nauczenie się konfigurowania i używania PostgreSQL jest zaletą.
Dowiesz się, jak zainstalować, skonfigurować i używać Postgres w aplikacji Django. Przetestujesz również funkcjonalność bazy danych, dodając, przechowując i pobierając dane z bazy danych.
1. Zainstaluj PostgreSQL w swoim systemie
Poniższe instrukcje wyjaśniają jak zainstalować Postgres w systemie operacyjnym Ubuntu. Jeśli jesteś użytkownikiem systemu Windows, możesz to zrobić przewodnik krok po kroku, jak zainstalować Postgres w systemie Windows.
Przed zainstalowaniem Postgres zaktualizuj pakiety wersji i ich zależności za pomocą następującego polecenia:
$ sudo apt-get update
Następnie zainstaluj PostgreSQL za pomocą następującego polecenia:
$ sudo apt-get install postgresql postgresql-contrib libpq-dev
Po wyświetleniu monitu o potwierdzenie instalacji naciśnij Y Do Tak.
Połącz się z serwerem za pomocą następującego polecenia:
$ sudo -i -u postgres
A następnie użyj klienta bazy danych, aby określić zainstalowaną wersję Postgres.
Uruchom polecenie psql --wersja.
postgres@nameofaccount:~$ psql --version
Dane wyjściowe pokażą twoją wersję Postgres, jak pokazano poniżej:
psql (PostgreSQL) 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)
Wyjdź z konta Postgres, uruchamiając plik Wyjście Komenda.
postgres@nameofaccount:~$ exit
2. Utwórz bazę danych
Musisz utworzyć bazę danych, którą połączysz z aplikacją Django. Wróć do powłoki Postgres i uruchom kolejno następujące polecenia.
sudo -i -u postgres
$ psql
Następnie użyj klienta do utworzenia bazy danych na serwerze.
postgres=# create database new_db;
Serwer zwraca termin CREATE DATABASE podczas tworzenia bazy danych. Możesz też sprawdzić wg wyświetlanie wszystkich baz danych w systemie za pomocą polecenia \l.
postgres=# \l
Struktura PostgreSQL
Podobnie jak typowa baza danych SQL, PostgreSQL przechowuje dane w tabelach. Tabele przedstawiają różne elementy/modele w aplikacji. Tabele mają stałą liczbę kolumn i wierszy.
Każda tabela ma określoną kolumnę zwaną kluczem głównym, unikalny identyfikator dla każdego wiersza przechowywanego w tabeli. Tabela może również mieć klucz obcy łączący ją z kluczem podstawowym innej tabeli.
Klucze obce definiują relacje między dwiema tabelami.
Następnie musisz utworzyć aplikację Django i połączyć bazę danych. Ale najpierw zainstaluj psycopg2 aby pomóc połączyć aplikację i bazę danych.
3. Zainstaluj bibliotekę Django i Psycopg2
Aby połączyć Postgres z aplikacją Django, musisz zainstalować psycopg2 biblioteka. Jest to zależność Postgres, która pomaga łączyć się i komunikować z Django.
Uruchom następujące polecenie, aby zainstalować psycopg2 I Django:
$ pipenv install psycopg2 Django
4. Utwórz aplikację Django
Musisz utworzyć aplikację Django, która będzie korzystać z bazy danych Postgres. Najpierw utwórz projekt o nazwie myboma do obsługi aplikacji. Projekty Django automatycznie generują zależności i ustawienia aplikacji potrzebne do uruchomienia aplikacji.
Utwórz folder o nazwie Zegarek Boma i przejdź do niego za pomocą następujących poleceń:
$ mkdir Boma-watch
$cd Boma-watch
Następnie utwórz projekt Django za pomocą następującego polecenia:
$ django-admin startproject myboma .
Pamiętaj, aby dodać kropkę na końcu polecenia, w przeciwnym razie Django utworzy nowy folder do przechowywania projektu.
Następnie utwórz nową aplikację o nazwie boma za pomocą następującego polecenia:
$ django startapp boma
Jeśli wcześniej nie pracowałeś z Django, możesz zacznij od przewodnika dla początkujących po Django. Po uruchomieniu aplikacji w przeglądarce w celu potwierdzenia, że działa, połączysz ją z bazą danych w następnej sekcji.
5. Połącz bazę danych z aplikacją Django
Teraz połączysz swoją aplikację Django z utworzoną bazą danych, wykonując następujące kroki:
Krok 1: Zmień ustawienia projektu, aby używać Postgres
Musisz zmienić ustawienia projektu, aby połączyć aplikację Django z Postgres. Przejdź do projektu ustawienia.py plik. Następnie zmień BAZY DANYCH settings, aby dodać konfiguracje Postgres.
Zastąp UŻYTKOWNIK I HASŁO z Twoim psql Nazwa użytkownika i hasło.
#...
DATABASES = {
'default': {
'ENGINE':'django.db.backends.postgresql',
'NAME':'new_db',
'USER':'morine',
'PASSWORD':'password',
}
}
Krok 2: Zaktualizuj strefę czasową
Dalej, w ustawienia.py plik, ustaw Strefa czasowa aby odzwierciedlić Twoją lokalizację. Projekty Django są wstępnie skonfigurowane ze strefą czasową UTC.
TIME_ZONE = Africa/Nairobi
Krok 3: Utwórz model
Stwórz Profil model w swojej aplikacji. Ta klasa modelu będzie używana do tworzenia tabel w bazie danych do przechowywania nazwy aplikacji i danych biologicznych.
classProfile(models.Model):
name = models.CharField(max_length=30)
bio = models.TextField(max_length=100)def__str__(self):
return self.name
Krok 4: Rozpocznij migrację
Uruchom następujące polecenia, aby rozpocząć migrację:
(virtual)$ python manage.py makemigrations boma
(virtual)$ python manage.py migrate
Pomyślna migracja będzie wyglądać następująco:
python Manage.py migracja polecenie wybiera aplikację z ZAINSTALOWANE_APLIKACJE settings > models.py i tworzy tabele dla każdego modelu. Pomyślnie połączyłeś Postgres ze swoją aplikacją.
Teraz możesz przetestować polecenia CREATE, READ, UPDATE i DELETE (CRUD) w swojej aplikacji.
6. Przetestuj polecenia CRUD w swojej aplikacji
Python API Django umożliwi Ci wykonanie niektórych operacji na bazie danych CRUD. API łączy funkcje z modelami, aby umożliwić manipulowanie bazą danych.
Otwórz powłokę Pythona w projekcie Django za pomocą następującego polecenia:
(virtual)$ python manage.py shell
Polecenie otworzy konsolę, w której możesz przetestować operacje CRUD.
Utwórz operację
Najpierw zaimportuj plik Profil modelka z modele moduł za pomocą następującego polecenia:
from boma.models import Profile
Następnie utwórz instancję pliku Profil class i podaj swoje dane.
prof1 = Profile.objects.create(name ='Ken',bio ='I am a Scorpio')
Następnie zapisz dane w bazie danych.
prof1.save()
Przeczytaj operację
Po utworzeniu danych w bazie danych i zapisaniu ich można wysłać do niej zapytanie w celu pobrania zapisanych danych.
Użyj Profil.objects.all() aby pobrać wszystkie dane w Profil tabela w bazie danych.
Profile.objects.all() #outputs
Możesz także pobrać pojedynczy obiekt za pomocą a główny klucz Lub pk. Są to numery przypisane do każdej pozycji zapisanej w bazie danych.
Profile.objects.get(pk = 1) #outputs
Operacja aktualizacji
Możesz zaktualizować zapisane dane za pomocą następującego polecenia:
Profile.objects.filter(id = 1).update(name ='Kim';) #outputs 1
Aby sprawdzić, czy nazwa została zaktualizowana, wykonaj następujące polecenie:
Profile.objects.filter(id = 1) #outputs
Usuń operację
Możesz usunąć zapisane elementy za pomocą następującego polecenia:
Profile.objects.filter(id = 1).delete() #outputs (1, {app.Profile: 1})
Aby potwierdzić usunięcie, uruchom następujące polecenie:
Profile.objects.filter(id = 1) #outputs
Możesz zobaczyć, że zestaw zapytań jest pusty, co oznacza, że danych nie ma już w bazie danych.
Dlaczego warto używać PostgreSQL?
Postgres to jedna z najbardziej zaawansowanych baz danych SQL. Jego kompilacje typu open source zapewniają stałą poprawę wydajności.
Zarządzanie obciążeniami jest łatwiejsze, a sortowanie baz danych staje się lepsze z każdą kolejną wersją. Jednym z powodów popularności Postgres jest to, że jest kompatybilny z większością nowoczesnych języków programowania i systemów operacyjnych.