Innholdsfortegnelse
Å fange brukerdata er avgjørende for webapplikasjoner. Denne fangsten kan være forhåndsdefinerte data, for eksempel verdier i velg felt eller radioknapper, da det også kan være åpen tekst som inndatatekst eller tekstområde når vi forventer litt mer omfattende informasjon.Felles for alle disse måtene for å fange data, bortsett fra at de er HTML -elementer, er at de må være inne i et skjema, et skjema er en beholder der vi plasserer elementer som fanger brukerdata, og så kan vi sende det gjennom de HTTP GET -metoder eller POST sistnevnte er den mest brukte.
Feltene i vår form
De generasjon av et skjema i Django Det ligner veldig på generering av en modell, dette er fordi det også bruker den deklarative formen som vi tilordner hvert element som et attributt for skjemaet klassen.
HuskeTil tross for den ovennevnte likheten, har modeller og former noen viktige forskjeller, en av dem er at de er forskjellige i måten de kan finne og gjenkjenne felt, for eksempel sjekker en modell om et attributt har et contrib_to_class () metode, i stedet søker skjemaet om attributtet faktisk er et felt, og utover det bekrefter det om det er en forekomst av Django.forms.felt.Felt.
Formgenerering
For å generere et skjema må vi først lage klassen som skal inneholde det, vi gjør skjemaklassen til en underklasse av skjema modul og vi legger den til i en ny fil som heter forms.py inne i applikasjonsmappen.
Inne i dette vil vi opprette en Metaklasse, i denne klassen vil vi indikere hvilken modell skjemaet vårt vil referere til, så etter vårt syn vil vi indikere skjemaklassen og til slutt vil vi tømme applikasjonsmalen. La oss se på det følgende bildet en formklasse:
Det siste trinnet er å vise skjemaet i den tilsvarende malen, for dette vil vi bruke form kontekstvariabel for å kunne skrive ut feltene. I følgende kode kan vi se hva vi mener:
FORSTØRRE