11--flask创建表单模型类与模板使用

we should set csrf_token like this `app.config[“SECRET_KEY”] = “fajfhaf454dgdghja44”

基本上与django一样

# encoding=utf-8
__author__ = "zhangyue"

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

# import flask_wtf

app = Flask(__name__)

app.config["SECRET_KEY"] = "fajfhaf454dgdghja44"

# 定义表单的模型类
class RegisterForm(FlaskForm):
    """自定义的注册表单模型类"""
    # DataRequired保证数据必须填写,并且不能为空
    username = StringField(label=u"用户名", validators=[DataRequired(u"用户名不能为空")])
    password = PasswordField(label=u"密码", validators=[DataRequired(u"密码不能为空")])
    repassword = PasswordField(label=u"确认密码", validators=[DataRequired(u"确认密码不能为空"),
                                                          EqualTo("password", u"两次密码不一致")])
    submit = SubmitField(label=u"提交")

@app.route("/register")
def index():
    # 创建一个表单对象
    form = RegisterForm()
    # 渲染模板
    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</title>
</head>
<body>
<form action="" method="post">
    {{form.username.label}}
    <p>{{form.username}}</p>
    {%for msg in form.username.errors%}
    <p>{{msg}}</p>
    {%endfor%}
    {{form.password.label}}
    <p>{{form.password}}</p>
    {{form.password.errors}}
    {{form.repassword.label}}
    <p>{{form.repassword}}</p>
    {{form.repassword.errors}}
    {{form.submit}}
</form>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值