Comment créer une forme django?

Comment créer une forme django?
L'utilisation du formulaire est une partie essentielle de toute application Web. Les contributions des utilisateurs du site Web peuvent être prises en utilisant le formulaire. Il peut contenir différents types de champs, tels que la zone de texte, la boîte combinée, la case à cocher, le bouton radio, etc. Pour prendre les données des utilisateurs. Django Framework contient un grand nombre de bibliothèques pour aider le développeur Web à concevoir un formulaire HTML pour prendre les commentaires de l'utilisateur, traiter l'entrée et répondre aux entrées de l'utilisateur.

Comment le formulaire HTML peut être utilisé pour prendre des données de l'utilisateur, lire les valeurs d'entrée et imprimer les valeurs du navigateur à l'aide de Django est affichée dans ce tutoriel.

Conditions préalables:

Vous devez créer un projet Django avant de créer le formulaire Django. Pour créer un nouveau projet Django et accéder au dossier du projet, exécutez les commandes suivantes:

$ django-admin startproject django_pro
$ cd django_pro

Pour créer les fichiers nécessaires et appliquer des migrations pour le projet, exécutez la commande suivante:

$ python3 gérer.py migrer

Pour vérifier si le serveur Django fonctionne correctement ou non, exécutez la commande suivante:

$ python3 gérer.Py Runserver

Pour créer le former sous django_pro Projet, exécutez la commande suivante:

$ python3 gérer.py startapp FormApp

Créer un formulaire HTML à l'aide de Django:

Ouvrir le vues.py fichier qui est à l'intérieur former dossier et modifiez son contenu avec le contenu suivant. Le script suivant vérifiera si le formulaire est soumis ou non. Si le formulaire est soumis, la valeur du demande.méthode sera posté et demande.POSTE.obtenir() La méthode est utilisée pour lire ses valeurs soumises. Le est valable() La fonction vérifiera si les données du formulaire sont valides ou non. Si cette fonction renvoie vrai, alors un message de réussite avec les données de l'utilisateur valide sera imprimé dans le navigateur, sinon, le message d'erreur qui apparaît sur le champ particulier du formulaire sera affiché. À part ça, le rendre() la méthode est utilisée pour charger le formulaire dans le navigateur et HttpResponse () La méthode est utilisée pour envoyer la réponse du serveur au navigateur après avoir soumis le formulaire.

# Importer les modules nécessaires
De Django.Raccourcis
De FormApp.Forms Importer Studentform
De Django.HTTP Import httpResponse
def form_request (demande):
# Vérifier que le formulaire est soumis ou non
Si demande.Méthode == 'Post':
Student = StudentForm (demande.POSTE)
# Vérifiez que les données du formulaire sont valides ou non
Si étudiant.est valable():
# Lisez les valeurs soumises
nom = demande.POSTE.get ("nom")
Email = demande.POSTE.obtenir ("e-mail")
nom d'utilisateur = demande.POSTE.obtenir ("nom d'utilisateur")
# Fusionner les valeurs
data = ['Votre inscription est terminée avec succès.
', 'Nom nom, '
',' E-mail: ', e-mail' '
',' Nom d'utilisateur: ', nom d'utilisateur]
# Renvoie les valeurs de formulaire comme réponse
retourner httpResponse (données)
autre:
# Afficher le formulaire HTML
Student = StudentForm ()
Retour rendu (demande, "formulaire.html ", 'form': étudiant)

Créer formes.py à l'intérieur de former dossier et ajoutez le contenu suivant. Le script suivant créera une forme de quatre champs. Le nom Le champ est défini pour prendre les données des caractères et il peut comporter 40 caractères. Le e-mail Le champ est défini pour prendre toute adresse e-mail valide à l'aide des données de caractère et il peut comporter 50 caractères. Le nom d'utilisateur Le champ est défini pour prendre les données des caractères, et il peut comporter 20 caractères. Le mot de passe Le champ est défini pour prendre les données des caractères et il peut comporter un minimum de 10 caractères et un maximum de 20 caractères. Le formes.Pass de passe Le widget est utilisé pour le champ de mot de passe pour masquer le contenu du champ de mot de passe.

# Importer des modules de formulaire
à partir des formulaires d'importation de Django
# Créer une classe pour définir les champs de forme
Classe StudentForm (Formulaires.Former):
nom = formulaires.Charfield (label = "nom complet", max_length = 40)
Email = formulaires.E-mail Field (label = "e-mail", max_length = 50)
nom d'utilisateur = formulaires.Charfield (label = "nom d'utilisateur", max_length = 20)
mot de passe = formulaires.Charfield (label = "mot de passe", min_length = 10, max_length = 20, widget = formulaires.Passwordinput)

Créer un dossier nommé modèles à l'intérieur de former dossier. Aller au Modèles section de les paramètres.py fichier et définir l'emplacement du modèle dossier pour le Rédacteurs propriété.

paramètres.py

Modèles = [

'DIRS': ['/ home / fahmida / django_pro / formapp / modèles']]
,
]]

Créer former.html à l'intérieur de modèle dossier avec le contenu suivant.

% csrf_token% est utilisé dans le script HTML pour empêcher les attaques du CSRF (Forgeries de demande croisée). former.as_p Chargera le formulaire Django conçu par le formes.py déposer. Quand le Soumettre Le bouton est enfoncé, les données du formulaire seront soumises au serveur.





Formulaire d'enregistrement des utilisateurs



% csrf_token%
former.as_p



Ouvrir le URL.py du django_pro dossier et modifiez le contenu avec le contenu suivant.

Ici le 'enregistrer/' le chemin est utilisé pour charger le formulaire dans le navigateur.

# Importer les modules nécessaires
De Django.Chemin d'importation des URL
à partir des vues d'importation FormApp
# Méthode d'appel pour afficher le formulaire
urlpatterns = [
Path («enregistrement /», vues.form_request)
]]

Ouvrez n'importe quel navigateur et saisissez l'URL suivante pour charger le formulaire d'enregistrement de l'utilisateur dans le navigateur.

http: // localhost: 8000 / registre

La sortie suivante apparaîtra après l'exécution de l'URL. La validation du champ vide, la valeur de longueur maximale des champs de nom, e-mail et mot de passe, et les valeurs de longueur minimale et maximale du champ de mot de passe seront vérifiées après la soumission du formulaire.

La sortie suivante montre que le champ de mot de passe n'est pas valide. Selon le formulaire, la durée de la valeur du mot de passe doit être de 10 à 20 caractères. 5 caractères ont été donnés comme entrée dans le formulaire suivant. Pour cela, le formulaire affiche le message d'erreur.

Après être entré dans la sortie valide dans tous les champs du formulaire, la sortie suivante apparaîtra.

Conclusion:

La façon de créer un formulaire d'enregistrement des utilisateurs très simple dans l'application Django a été affichée dans ce tutoriel. Django propose de nombreuses méthodes pour créer différents types de champs du formulaire, tels que Charfield (), le champ d'e-mail (), TextFiled, etc. La tâche de validation du formulaire devient très plus facile lorsque le formulaire est conçu par Django Form.