Flask--form组件

提示:
(1)继承FlaskForm 类,(导入: from flask_wtf import FlaskForm)
(2)导入表单中标签类型: from wtforms import StringField, PasswordField, SubmitField
(3)定义校验规则:from wtforms.validators import DataRequired, EqualTo

from flask import Flask,render_template,request

app=Flask(__name__)

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

app.config['SECRET_KEY']='abc' 

#1.创建一个类继承FlaskForm类
class RegisterForm(FlaskForm):
	username=StringField(label='用户名',validators=[DataRequired('用户名不能为空')])
	password=PasswordField(label='密码',validators=[DataRequired('密码不能为空')])
	password2=PasswordField(label='确认密码',validators=[DataRequired('密码不能为空'),EqualTo('password','两次输入的密码不同')])
	submit=SubmitField('注册')


@app.route('/register/',methods=['GET','POST'])
def register():
	form=RegisterForm()
	if request.method=='POST':
	#如果内容符合验证规格则返回True,否则返回False
		if form.validate_on_submit():
			#获取表单提交过来的内容
			username=form.username.data
			password=form.password.data
			password2=form.password2.data
			return 'success!!!'
	
	return render_template('register.html',form=form)

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

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册</title>
</head>
<body>
<form method="post">
    {{ form.csrf_token }}
    {{ form.username.label }}:{{ form.username }}
    <span style="color: red">{{ form.username.errors.0 }}</span>
    <br>
    {{ form.password.label }}:{{ form.password }}
    <span style="color: red">{{ form.password.errors.0 }}</span>

    <br>
    {{ form.password2.label }}:{{ form.password2 }}
    <span style="color: red">{{ form.password2.errors.0 }}</span>

    <br>
    {{ form.submit }}
</form>
</body>
</html>

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44111377/article/details/92690603