Django - Formulieren

Inhoudsopgave
Het vastleggen van gebruikersgegevens is van vitaal belang voor webapplicaties, deze vastlegging kan vooraf gedefinieerde gegevens zijn, zoals waarden in selecteer velden of Radio knoppen, omdat het ook open tekst kan zijn, zoals invoertekst of tekstgebied wanneer we iets uitgebreidere informatie verwachten.
Wat al deze manieren om gegevens vast te leggen gemeen hebben, afgezien van het feit dat het HTML-elementen zijn, is dat ze in een formulier moeten staan. Een formulier is een container waarin we elementen plaatsen die gebruikersgegevens vastleggen en vervolgens kunnen we het door de HTTP GET-methoden of NA de laatste wordt het meest gebruikt.
De velden van ons formulier
De generatie van een formulier in Django Het lijkt erg op het genereren van een model, dit komt omdat het ook gebruik maakt van de declaratieve vorm waarmee we elk element toewijzen als een attribuut van de formulierklasse.
HerinnerenOndanks de bovengenoemde overeenkomst, hebben modellen en vormen enkele belangrijke verschillen, een daarvan is dat ze verschillen in de manier waarop ze velden kunnen vinden en herkennen, een model controleert bijvoorbeeld of een attribuut een bijdrage_aan_klasse () methode, in plaats daarvan zoekt het formulier of het attribuut inderdaad een veld is en verder controleert het of het een instantie is van Django.forms.fields.Field.
Vorm generatie
Om een ​​formulier te genereren, moeten we eerst de klasse maken die het gaat bevatten, we maken van onze formulierklasse een subklasse van de formulier module en we voegen het toe in een nieuw bestand genaamd formulieren.py in de applicatiemap.
Hierin zullen we een Meta-klasse maken, binnen deze klasse zullen we aangeven naar welk model ons formulier zal verwijzen, vervolgens zullen we naar onze mening de formulierklasse aangeven en ten slotte zullen we de applicatiesjabloon leegmaken. Laten we in de volgende afbeelding een formulierklasse bekijken:

BelangrijkZoals we zien we importeren de formulierencomponent Y we importeren ook het model van onze applicatie, op deze manier kunnen we het gebruiken bij het declareren van de formulierklasse. Zodra dit is gebeurd, gaan we naar de weergave waar we aan de overeenkomstige klasse moeten aangeven dat deze dit formulier moet gebruiken. Laten we dit in de afbeelding zien:

Deze weergave komt overeen met een Op klassen gebaseerde weergaveIn theorie is het niet nodig dat we een formulier declareren, maar voor onze toepassing is mogelijk een aangepast formulier nodig dat minder velden toont of misschien wel extra velden.
De laatste stap is om het formulier in het bijbehorende sjabloon te tonen, hiervoor gebruiken we de vorm contextvariabele om de velden te kunnen afdrukken. In de volgende code kunnen we zien wat we bedoelen:

VERGROTEN

We zien dat we de vorm definiëren met HTML code en binnen brachten we de vorm context, dit is voldoende om de bijbehorende velden te genereren, een ander aspect waar we rekening mee moeten houden is de enctype, als ons formulier een bestand gaat ontvangen, moeten we de plaatsen meerdelige / formuliergegevens.Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een ​​positief punt te geven
wave wave wave wave wave