Django - MultiWidget

Indholdsfortegnelse
Apropos widgets, vi skal vide, at disse er en bro mellem HTML -kode og felterne i Django; Disse har meget at gøre med den måde, vi skal kontrollere adfærd på HTML i vores formularer og derfor i vores applikation.
Sådan er kontrollen, at vi kan anvende nogle programmeringsteknikker, hvor vi tillader os selv at gemme og behandle data af forskellige widgets og give dem til Django som om det var data fra en enkelt kilde.
Opdel data mellem flere widgets
Betjeningen af ​​dette kan opnås ved hjælp af render () metode af widget, så kan vi have et felt, og når vi behandler det, opdeler vi det i flere HTML -input, der hver indeholder et stykke af den værdi, vi skal gemme.
EksempelEt eksempel kan være feltet Dato tid, dette kan opdeles i et felt, der kun indfanger datoen og en anden, der indfanger tiden, men når den er gemt i Database Vi bør slutte sig til dem, og på denne måde har vi et komplet felt, men i brugerdelen er det delt.
MultiWidget
Som eksemplet, som vi angav tidligere, er det noget ganske kedeligt, da vi skulle tage os af at skrive for mange rutiner og metoder, der hjælper os med validering, i Django Dette er allerede gennemtænkt, og vi har hjælpeprogrammer, der udfører en stor del af dette arbejde for os.
MultiValueFieldPå siden af ​​markerne har vi MultiValueField det hjælper os med valideringen af ​​dataene, deres rensning og sammenligningen med hvert af de felter, der udgør forbindelsen; Det eneste, vi skal gøre her, er at angive, hvilke felter der vil gøre sammensætningen, og hvordan vi skal komprimere dem, så de kan bruges inden for koden Python.
Denne metode er lavet til at fungere sammen med MultiWidget hvem skal stå for oversættelse til HTML af alt det, vi tidligere har defineret i formklassen.
Lad os se nedenfor et billede af en eksempelkode, hvor vi har implementeret disse begreber:

FORSTØRRE

Her ser vi, hvordan vi først har defineret en klasse, der arver af MultiWidget, i den angiver vi, at vi kommer til at have to felter Inputtekst associerede virksomheder og etablerer en dekomprimere () metode som er den, der vil adskille værdierne til præsentation.
I den næste klasse satte vi lidt flere elementer, først fortæller vi den, at den skal arve fra MultiValueField så angiver vi det widget du skal bruge, og selvfølgelig vil vi fortælle dig at bruge widgeten, der allerede er defineret ovenfor.
Derefter i hans __init__ metode Vi angiver de felttyper, det vil tage, og endelig definerer vi metoden komprimere (), vi ser, at den bortset fra jeget også modtager en parameter data_liste, i dette vil vi videregive listen over data, der skal kombineres og returnere dem som en tupel, vi drager også fordel af at validere dem for at undgå at modtage fejlagtige data, der kan true vores applikation.
Med dette afslutter vi denne tutorial med at se, hvordan vi har et temmelig avanceret værktøj, der giver os mulighed for at tilpasse vores formularer lidt mere i vores applikation i enkle trin.Kan du lide og hjælpe denne vejledning?Du kan belønne forfatteren ved at trykke på denne knap for at give ham et positivt punkt

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave