Aller au contenu principal

3 formations sont désormais disponibles : Python, Flask et JS.

Aller au contenu principal

Avec Flask-WTF, un formulaire est une classe Python. Ça permet de tout centraliser.

Crée un fichier forms.py (c'est plus propre que de tout mettre dans app.py).

from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, SubmitField
from wtforms.validators import DataRequired, Email, Length

class LoginForm(FlaskForm):
    email = StringField('Email', validators=[
        DataRequired(message="L'email est obligatoire"),
        Email(message="Ceci n'est pas un email valide")
    ])
    
    password = PasswordField('Mot de passe', validators=[
        DataRequired(),
        Length(min=6, message="Au moins 6 caractères !")
    ])
    
    submit = SubmitField('Se connecter')

Décortiquons :

  1. Héritage : On hérite de FlaskForm.
  2. Champs : On utilise des classes comme StringField (texte), PasswordField (mot de passe), BooleanField (case à cocher), etc.
    • Le premier argument est le Label (ce qui sera écrit devant le champ).
  3. Validateurs : Une liste de règles.
    • DataRequired : Le champ ne doit pas être vide.
    • Email : Vérifie le format (a@b.c).
    • Length : Vérifie la taille.

C'est propre, lisible, et réutilisable.