1. 创建表单
- 使用Flask-WTF时,每个web表单是由继承自Form/FlaskForm类的子类来展现的。该类在表单中定义了一组表单域,每个都表示为一个对象。每个表单域都可以连接到一个或多个validators;
- validators是一个用于检查用户提交的输入是否合法的函数。
from flask_wtf import Form
from wtforms import StringField
from wtforms.validators import DataRequired
class NameForm(Form):
# NameForm表单有一个name文本框和submit提交按钮。
# StringField类表示一个type="text"属性的<input>标签。
# SubmitField类表示一个type="submit"属性的<input>标签。
# 表单域构造函数的第一个参数是一个label,在渲染表单到HTML时会使用。
# StringField构造函数包含可选参数validators,它定义了一组检查来验证用户提交的数据。Required()验证确保提交的表单域不为空。
name = StringField('name', validators=[DataRequired()])
submit = SubmitField('Submit')
*注意: Flask-WTF扩展定义了表单基类,所以它从flask_wtf导入。表单域、验证都是直接从WTForms包中导入。
总结:
- WTForms标准HTML表单域
- WTForms内建验证