Django - Vizualizări bazate pe funcții

Cuprins
Deși termenul de vizualizare poate fi interpretat într-un fel, în Django Acesta nu este conceptul clasic pe care îl folosim pentru el, de exemplu în programarea web de multe ori rezultatul pe care ni-l oferă o vizualizare depinde de acțiunile utilizatorului, poate utilizatorul actualizează o listă verticală și schimbă sensul total al vizualizării .
Când încercăm să stabilim conceptul de vedere, ceea ce vrem să obținem este să nu încercăm să-l comparăm cu conceptul pe care l-am predefinit din alte medii MVC, odată ce avem conceptul de vedere al Django îl putem exprima mai bine altor dezvoltatori.
Scheletul vederii
Dacă vedem corpul vederii și mergem la bazele acesteia, putem spune că o vedere este o funcție care acceptați o solicitare HTTP Da returnează un răspuns HTTPAm putea spune că această abordare este simplă, totuși, dacă vedem scopul viziunii, acest concept îl îndeplinește în mod adecvat, acum că pentru a ajunge la simplitatea acestor două elemente trebuie să desfășurăm alte activități.
Vizualizări generice
Filosofia Django ne spune că trebuie să facem tot posibilul pentru ca aplicațiile noastre să fie reutilizabile, simple și eficiente, ceea ce înseamnă acest lucru, că nu putem dezvolta elemente repetitive, adică să scriem același cod din nou și din nou, deoarece nu are sens, să vedem următoarea imagine:

În acest cod vedem cum construim o funcție, această funcție ne reprezintă o vedere, totuși este departe de a fi o soluție care îndeplinește punctele Filozofia Django, deși este adevărat că codul funcționează și, în multe cazuri, ar face treaba mai mult decât bine, să ne imaginăm că, în loc să facem doar acea viziune, trebuie să facem 100 sau 200, deoarece avem o aplicație de proporții mari, ar trebui să repete această logică iar și iar, generând același tip de cod.
Dacă ne uităm la numele vizualizării, la parametrii pe care îi apelează, inclusiv la răspunsul pe care îl oferă, care se îndreaptă către o adresă URL predefinită de dezvoltator, toate acestea ne îndreaptă către o vizualizare specifică și non-generică.
Înainte de a ne putea face griji, cadrul are deja o soluție la această problemă și este nimic mai mult și nimic mai puțin decât vederi generice, acestea sunt puncte de vedere care sunt deja definite, trebuie doar alăturați-le unui model, indicați un șablon și putem accesa funcții și metode care fac toate elementele de bază pe care trebuie să le avem.
Să vedem codul acestora vederi generice în următoarea imagine:

În exemplu, putem observa câteva puncte interesante, mai întâi nu limităm funcția la un singur model, vedem cum folosim funcția model.get_default_manager cu care stabilim care este cheia primară a modelului nostru, apoi returnăm numele șablonului pe care l-am obținut mai întâi ca argument al funcției.
Aici nu mai avem limitări prin cod, deoarece acest lucru se face o singură dată și îl include Django, trebuie doar să ne facem griji cu privire la integrarea a ceea ce vom folosi, să vedem implementarea unei vizualizări folosind această abordare:

În implementarea noastră numim pur și simplu funcția show_object din vederi clasa, indicăm ce model va folosi și numele șablonului, ceva mult mai puțin repetitiv și mai simplu decât abordarea non-generică pe care am văzut-o la început.
După cum putem vedea, avem instrumente în cadrul care ne salvează munca și putem respecta, de asemenea, o filozofie de dezvoltare curată și eficientă prin reducerea numărului de linii de cod inutile pe care le scriem.V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv
wave wave wave wave wave