Co to jest Django Orm?

Co to jest Django Orm?
W dzisiejszym świecie technologia stała się integralną częścią naszego życia, ponieważ wszystko wokół nas zostało zdigitalizowane. Jest to również prawdą nawet w sektorze biznesowym. Firmy, które nie wykorzystują odpowiedniej infrastruktury i nie są w stanie wyposażyć odpowiednią architekturę technologiczną, pozostają w tyle za konkurencją. Wynika to głównie z faktu, że obecnie liczba danych, na których firmy i organizacje polegają na ich analizie, wzrosła wykładniczo, w wyniku czego mogliby je przetwarzać i interpretować w efektywny sposób, muszą mieć odpowiedni zestaw narzędzi i infrastruktury do ich wspierania.

Bazy danych są jedną z najpopularniejszych technologii wykorzystywanych do gromadzenia i organizacji danych, ponieważ pozwala na łatwe dostęp do danych, zarządzać i aktualizować. Jednak te bazy danych wymagają systemu zarządzania, aby wykonać te zadania. Przeważnie język SQL jest używany do wykonywania operacji w bazie danych, jednak wraz ze wzrostem aplikacji i staje się bardziej złożona, niezwykle trudno jest mieć pomysł na to, co robi dokładnie każda operacja. Tutaj pojawia się mapowanie relacyjne obiektów techniki (ORM). Umożliwia to zapytanie i manipulowanie danymi przy użyciu wybranego języka programowania obiektowego. Orms zmniejsz złożoność kodu i ułatwia go zrozumiałym, co z kolei ułatwia aktualizowanie, utrzymanie i ponowne wykorzystanie kodu.

W tym artykule przyjrzymy się Django ORM, który jest ORM opartym na Pythonie, a zatem jedną z najpopularniejszych technologii używanych obecnie.

Co to jest Django?

Zanim przejdziemy do spojrzenia na ORM w Django, najpierw zobaczmy, jak właściwie ta technologia Pythoniczna jest nazywana Django.

Django to bezpłatna i open source ramy internetowe zaprojektowane w Pythonie, a zatem ma bardzo czystą i schludną konstrukcję, a także jest prosta, elastyczna, niezawodna i skalowalna. Ułatwia to programistom stron internetowych, ponieważ zapewnia użytkownikom gotowe komponenty, które z kolei uniemożliwiają im pisanie wszystkiego od zera, w wyniku czego ich praca jest szybsza i zmniejsza koszty ogólne na swojej stronie internetowej. Oprócz tego jest niezwykle bezpieczny i pomaga użytkownikom unikać problemów bezpieczeństwa, takich jak Ataków Zastrzeżenia interfejsu, zastrzyki SQL i tak dalej. Ma również wyjątkowo dużą społeczność, która jest zawsze dostępna na forach i zawsze gotowa zaoferować jej pomoc innym.

W końcu spójrzmy na Django Orm i niektóre z jego głównych funkcji.

Dostęp do Django Orm

Po zainstalowaniu Django i założeniu jego projektu zwykle otrzymujemy następujące początkowe pliki:

Mysite tutaj odnosi się do nazwy stworzonego projektu. Wszystkie te pliki mają własne zastosowania i ważne jest, abyś musiał wiedzieć, jaką rolę odgrywa każda plik. Koncentrujemy się tutaj na zarządzaniu.Plik PY, który będzie dla nas kontrolował wiele różnych rzeczy, takich jak konfigurowanie serwera, tworzenie migracji, komunikowanie się z bazą danych, a także wejdź do trybu ORM.

Aby otworzyć Django ORM, otwórz wiersz poleceń z głównego katalogu projektu Django i uruchom następujące polecenie:

$ Python Manage.Py Shell

To otworzy dla nas interaktywną powłokę, która pozwoli nam rozpocząć interakcję z bazą danych za pomocą ORM.

Manipulowanie bazą danych za pomocą zapytań w Django ORM

Ponieważ ORM pozwala nam na interakcję z bazą danych, możemy teraz pisać różne zapytania, aby odzyskać i manipulować danymi z bazy danych. Jednak zanim zaczniemy pracować nad bazą danych w powłoce, najpierw musimy zaimportować wszystkie powiązane z nią modele. Można to zrobić, po prostu uruchamiając polecenie w interaktywnej powładzie, jak pokazano poniżej:

$ z AppName.Modele Import ModelName

Tutaj nazwa AppName odnosi się do nazwy Twojej aplikacji, którą utworzyłeś, a zatem tam, gdzie obecnie przechowywane są twoje modele. Nazwa modelu odnosi się do nazwy modelu, który chcesz zaimportować i użyć. Możesz mieć wiele modeli zaimportowanych tutaj, jak pokazano w poniższym przykładzie:

Teraz możesz uzyskać dostęp do obiektu modelu i odczytać z niego dane. Na przykład, jeśli chcemy listy wszystkich postów, możemy po prostu uzyskać je, uruchamiając następujące polecenie w naszym terminalu:

$ Post.obiekty.Wszystko()

Poniżej znajduje się wynik powyższego polecenia:

Możemy zrobić kilka innych rzeczy w ORM, takich jak tworzenie nowych danych bazy danych, aktualizacja danych i wszystkie inne polecenia bazy danych, które możesz.

Modelowanie bazy danych

Jedną z najlepszych rzeczy, które Django ORM zapewnia użytkownikom, jest możliwość automatycznego łączenia i ustanawiania relacji między atrybutami obiektu modelu a odpowiednimi pola tabeli. W bazach danych istnieją głównie trzy rodzaje relacji. Są to związek jeden do jednego, związek jeden do wielu lub wiele do jednego oraz relacje z wieloma do wielu.

Związek jeden do jednego jest, jak sama nazwa wskazuje, gdzie zapis jednej tabeli odpowiada pojedynczej zapisie innej tabeli. W Django Orm możemy łatwo ustalić to, jak następujące:

Klasa rodzic (modele.Model):
User = modele.Onetoonefield (
Użytkownik,
on_delete = modele.KASKADA,
Primary_key = true,
)
Nazwa_of_father = Modele.Charfield (max_length = 100)
Nazwa_of_mother = modele.Charfield (max_length = 100)

Tutaj każdy użytkownik może mieć tylko pojedynczych biologicznych rodziców, a zatem jest to związek jeden do jednego. Teraz, jeśli usuniemy dowolnego użytkownika uzyskującego dostęp do tego modelu, usunie on również model 2Nd użytkownik, ponieważ są od siebie zależne.

Jeden do wielu lub wiele do jednego odnosi się do związku, w którym rekord rodziców może mieć kilka rekordów potomnych, jednak może mieć tylko jedno lub brak dziecka. W Django Orm możemy łatwo ustalić tę relację za pomocą Cudzoziemiec pole:

Klasy klient (modele.Model):
name = modele.Charfield (max_length = 255)
pojazd klasowy (modele.Model):
klient = modele.Obcokrajowy (
Klient,
on_delete = modele.KASKADA
)

Jak widać w powyższym kodzie, klient może mieć wiele pojazdów.

Wreszcie, relacje z wieloma do wielu definiuje związek, w którym wiele tabel może się ze sobą odnosić. Możemy to stworzyć za pomocą ManyTomany pole. W poniższym przykładzie utworzyliśmy dwa modele, jeden dla użytkownika, a drugi dla ich postów. Może być również wielu użytkowników, ponieważ każdy użytkownik może mieć wiele postów.

Użytkownik klasy (modele.Model):
post = modele.ManyTomanyfield (Post, blank = true)
przyjaciele = modele.ManyTomanyfield (Ustawienia.Auth_user_model, blank = true)
Klasa (modele.Model):
post = modele.Pole tekstowe()
polubienia = modele.ManyTomanyfield (Ustawienia.Auth_user_model, blank = true, contect_name = 'user_likes')

Wniosek

Django ORM jest niezwykle potężnym narzędziem i znacznie ułatwia twórcy stron internetowych. Ma wiele funkcji, takich jak manipulacja modelami bazy danych, ustanawianie relacji między modelami i wiele więcej. Krótko mówiąc, Django Orm jest jedną z najlepszych rzeczy, które są dostarczane z Django i jest bardzo skuteczne w dostarczonej pracy.