Spisie treści
Chociaż termin widok można interpretować w jeden sposób, w Django Nie jest to klasyczne pojęcie, którego do tego używamy, np. w programowaniu webowym wielokrotnie wynik jaki daje nam widok zależy od działań użytkownika, być może użytkownik aktualizuje listę rozwijaną i zmienia całościowy sens widoku .Kiedy próbujemy ustalić pojęcie widoku, to, co chcemy osiągnąć, to nie próbować porównywać go z pojęciem, które mogliśmy zdefiniować z innych środowisk MVC, gdy już mamy pojęcie widoku Django możemy lepiej wyrazić to innym programistom.
Szkielet wzroku
Jeśli zobaczymy bryłę widoku i przejdziemy do jego podstaw, możemy powiedzieć, że widok jest funkcją, która weź żądanie HTTP Tak zwraca odpowiedź HTTPMożna by powiedzieć, że to podejście jest proste, jednak jeśli widzimy cel tego poglądu, to pojęcie to w odpowiedni sposób spełnia, to teraz, gdy do prostoty tych dwóch elementów musimy wykonać inne czynności.
Widoki ogólne
Filozofia Django mówi nam, że musimy zrobić wszystko, co możliwe, aby nasze aplikacje były wielokrotnego użytku, proste i efektywne, co oznacza, że nie możemy tworzyć powtarzalnych elementów, czyli pisać w kółko tego samego kodu, bo to nie ma sensu, zobaczmy następujący obraz:
W tym kodzie widzimy, jak budujemy funkcję, ta funkcja reprezentuje nas pogląd, jednak daleko jej do rozwiązania spełniającego punkty Filozofia Django, chociaż prawdą jest, że kod działa i w wielu przypadkach wykonałby pracę bardziej niż dobrze, wyobraźmy sobie, że zamiast robić tylko ten widok, musimy zrobić 100 lub 200, ponieważ mamy aplikację o dużych proporcjach, musiałby powtarzać tę logikę w kółko, generując ten sam typ kodu.
Jeśli spojrzymy na nazwę widoku, wywoływane przez niego parametry, w tym odpowiedź, jaką daje, która kieruje do adresu URL predefiniowanego przez programistę, to wszystko wskazuje nam na konkretny i nieogólny widok.
Zanim zaczniemy się martwić, framework ma już rozwiązanie tego problemu i to nic więcej i nic mniej niż poglądy ogólne, są to poglądy, które są już zdefiniowane, po prostu musimy dołącz do nich wzór, wskaż szablon i możemy uzyskać dostęp do funkcji i metod, które wykonują wszystkie niezbędne podstawy.
Zobaczmy ich kod poglądy ogólne na poniższym obrazku:
W przykładzie możemy zauważyć kilka ciekawych punktów, najpierw nie ograniczamy funkcji do jednego modelu, widzimy jak korzystamy z funkcji model.get_default_manager za pomocą którego ustalamy, który jest kluczem podstawowym naszego modelu, następnie zwracamy nazwę szablonu, który otrzymaliśmy jako argument funkcji.
Tutaj nie mamy już ograniczenia kodem, ponieważ jest to robione tylko raz i obejmuje go Django, musimy się tylko martwić o zintegrowanie tego, czego będziemy używać, zobaczmy implementację widoku przy użyciu tego podejścia:
W naszej implementacji po prostu nazywamy funkcję pokaż_obiekt z klasa poglądów, wskazujemy, jakiego modelu będzie używał i nazwę szablonu, coś znacznie mniej powtarzalnego i prostszego niż nieogólne podejście, które widzieliśmy na początku.
Jak widać, mamy w ramach frameworka narzędzia, które oszczędzają nam pracę, a także możemy stosować się do czystej i wydajnej filozofii rozwoju, redukując liczbę zbędnych linijek kodu, który piszemy.Podobał Ci się i pomógł ten samouczek?Możesz nagrodzić autora, naciskając ten przycisk, aby dać mu pozytywny punkt