Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie Flask-WTF zur Implementierung der Formularvalidierung

So verwenden Sie Flask-WTF zur Implementierung der Formularvalidierung

PHPz
PHPzOriginal
2023-08-03 18:53:05898Durchsuche

So verwenden Sie Flask-WTF zur Implementierung der Formularvalidierung

Flask-WTF ist eine Flask-Erweiterung zur Handhabung der Webformularvalidierung. Sie bietet eine übersichtliche und flexible Möglichkeit, vom Benutzer übermittelte Daten zu validieren. In diesem Artikel erfahren Sie, wie Sie die Flask-WTF-Erweiterung zum Implementieren der Formularvalidierung verwenden.

  1. Flask-WTF installieren

Um Flask-WTF verwenden zu können, müssen Sie es zunächst installieren. Sie können den pip-Befehl zum Installieren verwenden:

pip install Flask-WTF
  1. Importieren Sie die erforderlichen Module

Um Flask-WTF in einer Flask-Anwendung zu verwenden, müssen Sie einige Module importieren. Fügen Sie der Datei app.py die folgende Importanweisung hinzu:

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

Die hier importierten Module umfassen Flask, FlaskForm und einige häufig verwendete Felder und Validatoren.

  1. Erstellen Sie eine Formularklasse

Erstellen Sie in der app.py-Datei eine Formularklasse, die von FlaskForm erbt. Jedes Formularfeld wird als Eigenschaft der Klasse definiert und die anzuwendenden Validatoren können über den Parameter validators angegeben werden. Hier ist zum Beispiel eine einfache Anmeldeformularklasse:

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

Diese Formularklasse enthält ein Benutzernamenfeld, ein Passwortfeld und eine Senden-Schaltfläche.

  1. Flask-App erstellen

Erstellen Sie eine Flask-App und verwenden Sie das Formular in der Routing-Funktion. Zum Beispiel:

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()

In diesem Beispiel haben wir eine /login-Route erstellt, um das Anmeldeformular anzuzeigen. Wenn der Benutzer das Formular absendet, wird die Methode „validate_on_submit()“ zur Überprüfung aufgerufen. Wenn die Überprüfung erfolgreich ist, kann die Anmeldelogik ausgeführt werden. Andernfalls wird die Formularseite erneut gerendert und die Überprüfungsfehlermeldung angezeigt.

  1. Erstellen Sie eine Vorlagendatei

Erstellen Sie eine Vorlagendatei mit dem Namen login.html im Vorlagenordner, um das Anmeldeformular anzuzeigen. Sie können das von Flask-WTF bereitgestellte Formularattribut verwenden, um Formular-HTML-Code und Validierungsfehlerinformationen zu generieren. Beispiel:

<!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>

Verwenden Sie in dieser Vorlagendatei form.csrf_token, um Felder zum Schutz vor standortübergreifenden Anforderungsfälschungen zu generieren. Formularfelder und Validierungsfehlermeldungen können jeweils über die Eigenschaften „form field“ und „form.errors“ generiert werden.

  1. Führen Sie die Anwendung aus

Verwenden Sie den folgenden Befehl, um die Anwendung auszuführen:

python app.py

Besuchen Sie http://localhost:5000/login im Browser, um die Anmeldeseite anzuzeigen. Geben Sie den Benutzernamen und das Passwort ein und klicken Sie auf die Schaltfläche „Senden“. Anhand der Überprüfungsergebnisse können Sie sehen, dass die Formulardaten überprüft und entsprechend verarbeitet werden.

Die oben genannten Schritte sind die grundlegenden Schritte für die Verwendung von Flask-WTF zur Implementierung der Formularvalidierung. Mit dieser Methode können die von Benutzern übermittelten Daten leicht überprüft werden, um deren Rechtmäßigkeit und Sicherheit zu gewährleisten. Darüber hinaus bietet Flask-WTF weitere umfangreiche Funktionen wie Datei-Upload, Unterstützung mehrerer Sprachen usw. Ich hoffe, dieser Artikel kann Ihnen helfen und Ihnen ermöglichen, Flask-WTF besser für die Formularvalidierung zu nutzen.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Flask-WTF zur Implementierung der Formularvalidierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn