Django - Klassebaserte visninger

Innholdsfortegnelse
Fra Django versjon 1.3 En ganske betydelig endring ble introdusert, dette var for å inkorporere muligheten for å lage visninger gjennom klasser i stedet for funksjoner som hadde blitt gjort, når vi behandler visningsobjektene genereres muligheten for å lage flere generiske visninger som vi kan holde oss mer til TØRR -prinsippet ikke å gjenta deg selv.
Klassebaserte visninger
For øyeblikket trenger ikke visningene å være begrenset til å være funksjoner, dette er takket være det faktum at i Django er det viktige å kunne skaffe et element som kan kalles, takket være denne tilnærmingen kan vi ha litt frihet i hvordan vi genererer elementene som kan kalles. Ved å bygge klassebaserte visninger får vi følgende fordeler:
1Utvalget av konfigurerbarhet er høyere.
2Det er mye lettere å tilpasse når du oppretter spesialiserte prosjekter.
3Vi kan gjenbruke objektene til andre formål.
Det er sant at det er forskjellige måter å lage klasser på, for å opprettholde konsistensen med koden Django vi bør prøve å gjøre klassene våre lik de generiske klassene i rammeverket.
Uansett, når du gjør dette, er det en anbefaling å huske på at vi ikke er forhindret i å lage klassene slik applikasjonen vår trenger det, selv om vi må avvike fra de generiske klassene som allerede er nevnt.
Generisk visning Django.views.generic.base.View
Siden hver begynnelse er vanskelig uten en guide, Django Det gjør det lettere for oss å komme inn i denne verden ved å tilby oss sitt generiske syn, for å bruke det trenger vi bare å lage en underklasse av det, og på denne måten vil vi ha en base.
Dette vil åpenbart ikke gjøre det vi trenger fra begynnelsen, men vi kan bruke følgende funksjoner:
1Validering av argumenter sendt til visningskonfigurasjonen.
2Forhindrer at argumenter som heter HTTP -metoder brukes.
3Samle argumentene som er sendt i URL -konfigurasjonen.
4Kontroller at en kalt HTTP -metode støttes av visningen.
5Behandler alternativforespørsler automatisk.
Hvordan lage en visning i en klasse
Vi har allerede sett de forskjellige egenskapene til hva det betyr generere visninger med klasserVi har til og med sett noen fordeler, nå skal vi se hvordan vi kan oversette det vi vet til kode for å få resultatet.
La oss se på bildet nedenfor en visning generert ved å lage en underklasse av generisk Django View:

La oss gjøre en analyse av koden, hvis vi ser, oppretter vi klassen vår og vi spesifiserer at den må være a Se underklasse så vi får alle dens funksjoner vi spesifiserer hvilken mal som skal knyttes til klassen og endelig vi overstyrer metodene for å få og legge ut, på denne måten kan vi inkorporere vår logikk.
ViktigFor å kunne bruke utsikten må vi erklære den i vår mønster i url og fortell det at det skal behandles som et syn ved hjelp av as_view () metode, eventuelt kan vi sende navnet på malen der den skal returnere resultatene.
For å fullføre denne opplæringen, la oss se et eksempel på det ovennevnte i følgende bilde:

Likte og hjalp du denne opplæringen?Du kan belønne forfatteren ved å trykke på denne knappen for å gi ham et positivt poeng

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave