主题
表单
安装依赖
shell
pip install flask-wtf
查看代码
https://gitee.com/PatrickW/flask-web/blob/master/src/7form.py
https://gitee.com/PatrickW/flask-web/blob/master/src/templates/form.html
python
from flask import Flask, render_template, flash, redirect, url_for
from flask_bootstrap import Bootstrap
from flask_wtf import FlaskForm
from wtforms import (StringField, SubmitField, EmailField,
SelectField, TextAreaField, PasswordField)
from wtforms.validators import DataRequired, Email, Length, EqualTo
app = Flask(__name__)
app.config['SECRET_KEY'] = 'abcdefghijklmnopqrstuvwxyz'
bootstrap = Bootstrap(app)
class NameForm(FlaskForm):
name = StringField('姓名', validators=[DataRequired(), Length(min=2, max=20)])
email = EmailField('邮箱', validators=[DataRequired(), Email()])
password = PasswordField('密码',
validators=[DataRequired(),
Length(min=6, message='密码至少需要6个字符')])
confirm_password = PasswordField('确认密码',
validators=[DataRequired(),
EqualTo('password', message='两次密码必须匹配')])
about_me = TextAreaField('个人简介')
submit = SubmitField('提交')
@app.route('/', methods=['GET', 'POST'])
def index():
form = NameForm()
if form.validate_on_submit():
# 表单验证成功后的处理
flash(f'欢迎您 {form.name.data}!注册成功。', 'success')
return redirect(url_for('index'))
return render_template('form.html', form=form)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=SERVER_PORT, debug=True)
注册页面

注册成功
