Maison  >  Article  >  développement back-end  >  Comment utiliser Flask-WTF pour implémenter la validation de formulaire

Comment utiliser Flask-WTF pour implémenter la validation de formulaire

PHPz
PHPzoriginal
2023-08-03 18:53:05901parcourir

Comment utiliser Flask-WTF pour implémenter la validation de formulaire

Flask-WTF est une extension Flask pour gérer la validation de formulaire Web. Elle fournit un moyen concis et flexible de valider les données soumises par l'utilisateur. Cet article vous montrera comment utiliser l'extension Flask-WTF pour implémenter la validation de formulaire.

  1. Installer Flask-WTF

Pour utiliser Flask-WTF, vous devez d'abord l'installer. Vous pouvez utiliser la commande pip pour installer :

pip install Flask-WTF
  1. Importer les modules requis

Pour utiliser Flask-WTF dans une application Flask, vous devez importer certains modules. Ajoutez l'instruction d'importation suivante dans le fichier app.py :

from flask import Flask, render_template, request
from flask_wtf import FlaskForm
from wtforms import StringField, PasswordField, SubmitField
from wtforms.validators import DataRequired, Length

Les modules importés ici incluent Flask, FlaskForm et certains champs et validateurs couramment utilisés.

  1. Créer une classe de formulaire

Dans le fichier app.py, créez une classe de formulaire qui hérite de FlaskForm. Chaque champ de formulaire est défini comme une propriété de la classe, et les validateurs à appliquer peuvent être spécifiés via le paramètre validators. Par exemple, voici une classe de formulaire de connexion simple :

class LoginForm(FlaskForm):
    username = StringField('用户名', validators=[DataRequired(), Length(min=4, max=20)])
    password = PasswordField('密码', validators=[DataRequired()])
    submit = SubmitField('登录')

Cette classe de formulaire contient un champ de nom d'utilisateur, un champ de mot de passe et un bouton de soumission.

  1. Créer une application Flask

Créez une application Flask et utilisez le formulaire dans la fonction de routage. Par exemple :

app = Flask(__name__)
app.secret_key = 'your-secret-key'

@app.route('/login', methods=['GET', 'POST'])
def login():
    form = LoginForm()
    if form.validate_on_submit():
        # 表单验证通过
        # 执行登录逻辑
        return '登录成功'
    return render_template('login.html', form=form)

if __name__ == '__main__':
    app.run()

Dans cet exemple, nous avons créé une route /login pour afficher le formulaire de connexion. Lorsque l'utilisateur soumet le formulaire, la méthode validate_on_submit() est appelée pour vérification. Si la vérification réussit, la logique de connexion peut être exécutée ; sinon, la page du formulaire sera restituée et le message d'erreur de vérification sera affiché.

  1. Créez un fichier modèle

Créez un fichier modèle nommé login.html dans le dossier des modèles pour afficher le formulaire de connexion. Vous pouvez utiliser l'attribut de formulaire fourni par Flask-WTF pour générer le code HTML du formulaire et les informations d'erreur de validation. Par exemple :

<!DOCTYPE html>
<html>
<head>
    <title>登录</title>
</head>
<body>
    <h1>登录</h1>
    <form method="POST" action="{{ url_for('login') }}">
        {{ form.csrf_token }}
        {{ form.username.label }} {{ form.username }}
        {% for error in form.username.errors %}
            <span style="color: red;">{{ error }}</span>
        {% endfor %}
        <br>
        {{ form.password.label }} {{ form.password }}
        {% for error in form.password.errors %}
            <span style="color: red;">{{ error }}</span>
        {% endfor %}
        <br>
        {{ form.submit }}
    </form>
</body>
</html>

Dans ce fichier modèle, utilisez form.csrf_token pour générer des champs de protection contre la falsification des requêtes intersites. Les champs de formulaire et les messages d'erreur de validation peuvent être générés respectivement via les propriétés form field et form.errors.

  1. Exécutez l'application

Utilisez la commande suivante pour exécuter l'application :

python app.py

Visitez http://localhost:5000/login dans le navigateur pour voir la page de connexion. Entrez le nom d'utilisateur et le mot de passe et cliquez sur le bouton Soumettre. Vous pouvez voir que les données du formulaire sont vérifiées et traitées en conséquence en fonction des résultats de la vérification.

Ce qui précède sont les étapes de base pour utiliser Flask-WTF pour implémenter la validation de formulaire. Grâce à cette méthode, les données soumises par les utilisateurs peuvent être facilement vérifiées pour garantir leur légalité et leur sécurité. Non seulement cela, Flask-WTF fournit également d'autres fonctionnalités riches, telles que le téléchargement de fichiers, la prise en charge multilingue, etc. J'espère que cet article pourra vous aider et vous permettre de mieux utiliser Flask-WTF pour gérer la validation des formulaires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn