Utilisation des formulaires Django
Dans cette section, nous allons voir la classe
Django Form. Cette classe ne règle
pas tous les problèmes évoqués précédemment,
mais elle prend en charge nombre d’entre eux :
1. Générer le formulaire
avec les bons types de champs.
2. Contrôler le formulaire en Python
et/ou avec les templates Django, pas en HTML.
3. Vérifier les données.
4. Gérer la conversion des données
en Python.
5. Fournir des outils pour gérer
certains aspects du workflow.
Avant de détailler tout cela, reprenons
l’exemple précédent, mais à l’aide
de Django Forms.
Fichier template :
<form action="" method="post">
{% csrf_token %}
{{ form }}
<input type="submit" value="go." />
</form>
{% if value %}
<h2>{{ entree }} élevé au carré donne : {{ value }}</h2>
{% endif %}
Fichier forms.py :
from django import forms
class MonForm(forms.Form):
entree = forms.IntegerField(label=’Entrée’)
Fichier views.py :
from django.shortcuts import render
from django.http import HttpResponseRedirect
from . import MonForm
def formulaire_form(request):
value = None
if request.method == ’POST’: # On récupère ...