Python

Comment créer un formulaire Django?

Comment créer un formulaire Django?
L'utilisation du formulaire est un élément essentiel de toute application web. L'entrée des utilisateurs du site peut être prise en utilisant le formulaire. Il peut contenir différents types de champs, tels qu'une zone de texte, une zone de liste déroulante, une case à cocher, un bouton radio, etc. prendre les données des utilisateurs. Le framework Django contient un grand nombre de bibliothèques pour aider le développeur Web à concevoir un formulaire HTML pour prendre l'entrée de l'utilisateur, traiter l'entrée et répondre à l'entrée 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 dans le navigateur à l'aide de Django est montré dans ce didacticiel.

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 les 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 formapp en dessous de django_pro projet, exécutez la commande suivante :

$ python3 gérer.py startapp formapp

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

Ouvrez le vues.py fichier qui est à l'intérieur formapp 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 demander.méthode sera POST et demander.PUBLIER.obtenir() méthode est utilisée pour lire ses valeurs soumises. le est valable() fonction vérifiera si les données du formulaire sont valides ou non. Si cette fonction retourne 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é. A part ça, le rendre() méthode est utilisée pour charger le formulaire dans le navigateur et Réponse HTTP () méthode est utilisée pour envoyer la réponse du serveur au navigateur après avoir soumis le formulaire.

# Importez les modules nécessaires
de Django.raccourcis import rendu
de formapp.formulaires importer StudentForm
de Django.http importer HttpResponse
def form_request(request):
# Vérifiez que le formulaire est soumis ou non
si demande.méthode == 'POSTER' :
étudiant = StudentForm(demande.PUBLIER)
# Vérifiez que les données du formulaire sont valides ou non
si étudiant.est valable():
# Lire les valeurs soumises
nom = demande.PUBLIER.obtenir("nom")
email = demande.PUBLIER.obtenir("e-mail")
nom d'utilisateur = demande.PUBLIER.get("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 du formulaire en réponse
renvoyer HttpResponse (données)
autre:
# Afficher le formulaire html
étudiant = StudentForm()
return render(requête, "formulaire.html", 'form': étudiant)

Créer formes.py à l'intérieur de formapp dossier et ajoutez le contenu suivant. Le script suivant va créer un formulaire de quatre champs. le Nom le champ est défini pour prendre les données de caractère et il peut contenir 40 caractères. le e-mail le champ est défini pour prendre n'importe quelle adresse e-mail valide en utilisant les données de caractères et il peut contenir 50 caractères. le Nom d'utilisateur le champ est défini pour prendre les données de caractère, et il peut contenir 20 caractères. le le mot de passe le champ est défini pour prendre les données de caractères et il peut comporter un minimum de 10 caractères et un maximum de 20 caractères. le formes.Saisie du mot de passe 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 django
# Créer une classe pour définir les champs du formulaire
classe StudentForm(formulaires.Forme):
nom = formes.CharField(label="Nom complet", longueur_max=40)
email = formulaires.EmailField(label="Email", max_length=50)
nom d'utilisateur = formulaires.CharField(label="Nom d'utilisateur", longueur_max=20)
mot de passe = formulaires.CharField(label="Mot de passe", min_length=10, max_length=20, widget=forms.Saisie du mot de passe)

Créer un dossier nommé modèles à l'intérieur de formapp dossier. Allez au MODÈLES section de les paramètres.py fichier et définissez l'emplacement du modèle dossier pour le DIR propriété.

Les paramètres.py

MODÈLES = [

'DIRS' : ['/home/fahmida/django_pro/formapp/templates']
,
]

Créer forme.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 CSRF (Cross-Site Request Forgeries). forme.as_p chargera le formulaire Django conçu par le formes.py déposer. Quand le Soumettre est enfoncé, les données du formulaire seront soumises au serveur.





Formulaire d'inscription de l'utilisateur



% csrf_token %
forme.as_p



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

Ici le 'S'inscrire/' path est utilisé pour charger le formulaire dans le navigateur.

# Importez 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 = [
chemin('register/', vues.formulaire_demande)
]

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

http://localhost:8000/register

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 nom, email et mot de passe, et les valeurs de longueur minimale et maximale du champ 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 longueur de la valeur du mot de passe doit être comprise entre 10 et 20 caractères. 5 caractères ont été saisis sous la forme suivante. Pour cela, le formulaire affiche le message d'erreur.

Après avoir entré la sortie valide dans chaque champ du formulaire, la sortie suivante apparaîtra.

Conclusion:

La manière de créer un formulaire d'inscription utilisateur très simple dans l'application Django a été montrée dans ce tutoriel. Django a de nombreuses méthodes pour créer différents types de champs du formulaire, tels que CharField(), EmailField(), TextFiled, etc. La tâche de validation du formulaire devient très facile lorsque le formulaire est conçu par Django form.

Meilleurs jeux de ligne de commande pour Linux
La ligne de commande n'est pas seulement votre plus grand allié lorsque vous utilisez Linux, elle peut également être une source de divertissement car...
Meilleures applications de mappage de manette de jeu pour Linux
Si vous aimez jouer à des jeux sur Linux avec une manette de jeu au lieu d'un système de saisie clavier et souris typique, il existe des applications ...
Outils utiles pour les joueurs Linux
Si vous aimez jouer à des jeux sur Linux, il est probable que vous ayez utilisé des applications et des utilitaires comme Wine, Lutris et OBS Studio p...