Table des matières
La capture des données utilisateur est vitale pour les applications web, cette capture peut être des données prédéfinies, telles que des valeurs dans sélectionner des champs ou alors boutons radio, car il peut également s'agir de texte ouvert tel que du texte de saisie ou une zone de texte lorsque nous attendons des informations un peu plus détaillées.Ce que toutes ces façons de capturer des données ont en commun, à part le fait qu'il s'agit d'éléments HTML, c'est qu'ils doivent être à l'intérieur d'un formulaire, un formulaire est un conteneur où nous plaçons des éléments qui capturent les données utilisateur et nous pouvons ensuite les envoyer via les Méthodes HTTP GET ou alors PUBLIER ce dernier étant le plus utilisé.
Les champs de notre formulaire
La génération d'un formulaire dans Django C'est très similaire à la génération d'un modèle, c'est parce qu'il utilise également la forme déclarative avec laquelle nous affectons chaque élément comme attribut de la classe de formulaire.
rappelerMalgré la similitude susmentionnée, les modèles et les formulaires présentent des différences importantes, l'une d'entre elles étant qu'ils diffèrent dans la manière dont ils peuvent trouver et reconnaître des champs, par exemple un modèle vérifie si un attribut a un méthode contribute_to_class(), à la place, le formulaire recherche si l'attribut est bien un champ et au-delà, il vérifie s'il s'agit d'une instance de Django.forms.fields.Field.
Génération de formulaires
Pour générer un formulaire, nous devons d'abord créer la classe qui va le contenir, nous faisons de notre classe de formulaire une sous-classe de la module de formulaire et nous l'ajoutons dans un nouveau fichier appelé formulaires.py dans le dossier de l'application.
À l'intérieur, nous allons créer une classe Meta, dans cette classe, nous indiquerons à quel modèle notre formulaire se référera, puis dans notre vue, nous indiquerons la classe de formulaire et enfin nous viderons le modèle d'application. Voyons dans l'image suivante une classe de formulaire :
La dernière étape consiste à afficher le formulaire dans le modèle correspondant, pour cela nous utiliserons le variable de contexte de formulaire pour pouvoir imprimer les champs. Dans le code suivant, nous pouvons voir ce que nous voulons dire :
AGRANDIR