flask-(Forms表单与flash消息闪现)

.Form表单后端
    (1)首先,导入表单基类,falsk-wtf使用秘钥生成加密令牌,用加密令牌验证请求中表单数据的真伪
        

# 管理员登录表单

class LoginForm(FlaskForm):

    account = StringField(

        label="账号",

        validators=[

            DataRequired("请输入账号!")

        ],                               # 验证器,如果前端不输入,会提示

        description="账号",              # 描述符

        render_kw={  # 附加选项

            "class": "form-control",

            "placeholder": "请输入账号!",

            "required": "required"  # 添加强制属性,H5会在前端验证,注释掉会提示验证器内容

        }

    )

    pwd = PasswordField(

        label="密码",

        validators=[

            DataRequired("请输入密码!")

        ],

        description="密码",

        render_kw={

            "class": "form-control",

            "placeholder": "请输入密码!",

            "required": "required"

        }

    )

    submit = SubmitField(

        '登录',

        render_kw={

            "class": "btn btn-primary btn-block btn-flat"

        }

    )

 (2)视图中的获取前端请求数据

 

 # 导入登录表单

form = LoginForm()

# 获取数据集

data = form.data 

# key-value取值

data['account']

 

注意:若使用此种方法,获取前端请求数据,form标签的action不用写路由,只需注明method方式,前端需以下书写放能拿到数据 ! ! !

 

# 将标签用此形式替换

{{ form.name }}

{{ form.name.label }}

# 提交按钮

{{ form.csrf_token }}   # 加密令牌,用加密令牌验证请求中表单数据的真伪

{{ form.submit }}

2.常用form表单的提交
  (1)前端正常写,通过路由传参
  (2)后端获取数据方式
       ① get请求:request.args.get()
       ② post请求:request.form.get()

3.flash消息闪现,提示信息,此处列举两处

(1)python代码
       ① flash('错误',‘err’)
           flash('正确','ok')  

       ② flash('错误”)
            flash('正确”)

(2)前端获取错误提示的代码
       ①{% for msg in get_flashed_messages(category_filter=['ok']) %}{% endfor %}
       ②{% for msg in get_flashed_messages() %}{% endfor %}

此外,还有其他方法,可去官方文档查看

你可能感兴趣的:(我的博客)