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 ShellTo 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 ModelNameTutaj 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):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):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):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.