• Flask学习:根据WTF实现登录


    htm页面:

    <!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}}
              {{form.password.label}}{{form.password}}
              {{form.password2.label}}{{form.password2}}
              {{form.submit}}
        </form>
    </body>
    </html>

    Demo02:

    from flask import Flask, render_template, request, flash
    from flask_wtf import FlaskForm
    from wtforms import StringField, PasswordField, SubmitField
    from wtforms.validators import DataRequired, EqualTo
    
    app = Flask(__name__)
    # flash需要加密内容
    app.secret_key = "test"
    
    
    class LoginForm(FlaskForm):
        username = StringField(u"用户名:", validators=[DataRequired()])
        password = PasswordField(u"密码:", validators=[DataRequired()])
        password2 = PasswordField(u"确认密码:", validators=[DataRequired(), EqualTo("password", "密码不一致")])
        submit = SubmitField("提交")
    
    
    @app.route("/", methods=["GET", "POST"])
    def login():
        login_form = LoginForm()
        # 1.判断请求方式
        if request.method == "POST":
            # 2.获取请求参数
            username = request.form.get("username")
            password = request.form.get("password")
            password2 = request.form.get("password2")
            # 3.验证,通过WTF可以一句话就实现所有的校验
            if login_form.validate_on_submit():
                print(username, password, password2)
                return "登录成功"
            else:
                flash("参数有误")
        return render_template("login.html", form=login_form)
    
    
    # 4.启动程序
    if __name__ == '__main__':
        app.run()

    测试效果:

  • 相关阅读:
    spring的了解以及简单框架的搭建
    动态代理
    struts2标签(转)
    使用OGNL表达式
    struts2 ValueStack
    struts2框架xml验证
    struts2 validate手动验证
    struts2自定义拦截器
    struts2文件上传
    当findById(Integer id)变成String类型
  • 原文地址:https://www.cnblogs.com/jumpkin1122/p/11876293.html
Copyright © 2020-2023  润新知