WTF表单

作者: 菜田的守望者w | 来源:发表于2018-12-01 17:01 被阅读0次

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__)

app.secret_key = 'itheima'

"""

目的:实现一个简单的登录的逻辑处理

1.路由需要GET和POST两种请求方式-->需要判断请求方式

2。获取请求的参数

3.判断参数是否填写&密码是否相同

4。如果判断都没有问题,就返回一个success

"""

"""

给模板转递消息

flash-->需要对内容加密,因此需要设置secret_key,做加密消息的混淆

模板中需要遍历消息

"""

"""

使用WTF实现表单

自定义表单类

"""

class LoginForm(FlaskForm):

    username = StringField(u'用户名',validators=[DataRequired()])

    password = PasswordField(u'密码',validators=[DataRequired()])

    password2 = PasswordField(u'确认密码', validators=[DataRequired(),EqualTo('passworld', '密码不一致')])

    submit = SubmitField(u'提交')

@app.route('/form', 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')

        print(username)

        # 3.验证参数,WTF可以一句话就实现所有校验

    # 我们没有csrf_token

        if login_form.validate_on_submit():

            print(username,password)

            return 'success'

        else:

            flash(u'参数有错误')

    return render_template('index.html', form=login_form)

@app.route('/', methods=['GET,POST'])

def hello_world():

    # request:请求对象-->获取请求方式,数据

    # 判断请求方式

    if request.method == 'POST':

        # 2.获取请求参数

        username = request.form.get('username')

        print(username)

        # 3.判断参数是否填写&密码是否相同

        if not all(['username,password,password2']):

            flash(u'参数不完整')

        elif 'password' != 'password2':

            flash(u'密码不一致')

        else:

            return 'success'

    return render_template('index.html')

if __name__ == '__main__':

    app.run()

相关文章

  • Python day43_Flask入门

    使用 Flask-WTF 实现表单 导入wtf扩展的表单类,导入自定义表单需要的字段,导入wtf扩展提供的表单验证...

  • 4. 表单

    4.1 HTML表单 先看一个简单的HTML表单 4.2 使用Flask-wtf处理表单 Flask-wtf默认为...

  • Flask Web笔记(四)- 表单

    Web 表单 处理web表单的扩展 Flask-WTF 跨域请求伪造保护(CSRF) Flask-WTF 能保护所...

  • WTF表单

    from flask import Flask, render_template, request,flash f...

  • Flask表单

    表单 flask-wtf 的使用 1.跨站请求伪造保护 Flask-WTF 能保护所有表单免受跨站请求伪造(Cr...

  • 表单验证(WTF)

    官方文档在Flask项目开发中针对提交表单的校验,可以使用Flask-WTF扩展库进行快速的字段校验,也可以进行页...

  • Flask表单-WTF

    Flask-WTF 提供了对 WTForms 的集成, 从 0.9.0 版本开始,Flask-WTF 不再从 WT...

  • Flask Web 开发 Chapter4 - Web 表单

    处理Web表单的扩展 Flask-WTF Flask-wtf 对WTForms包进行了包装,方便集成入Flask框...

  • Flask 登录注册

    主文件 myapp.py 创建WTF 表单类 模拟sqlalchemy 登录界面,通过表单实例渲染 login_r...

  • Flask扩展——Flask-WTF速记

    一、创建表单类 创建表单代码段 1. 导入Form类 from flask_wtf import Form For...

网友评论

      本文标题:WTF表单

      本文链接:https://www.haomeiwen.com/subject/yljrcqtx.html