flask-wtf

request.form 获取POST请求中提交的表单数据
Flask 请求的对象提供的信息足够用于处理web表单,但是人物单调,重复
例如:生成表单的HTML代码和验证提交的表单数据

Flask-WFT

将处理web表单的过程变得比较有趣

安装:
pip install flask-wtf

功能:
flask-wtf可以保护表单免受 跨站请求伪造(CSRF)的攻击
恶意网站将请求发送到被攻击者已登录的其他网站时就会引发CSRF

实现CSRF保护
程序需要设置秘钥,falsk-wtf使用秘钥生成加密令牌,用加密令牌验证请求中表单数据的真伪

设置秘钥
设置flask-wtf

app = Flask(__name__)
app.config['SECRET_KEY'] = 'hard to guess string'

app.config字典
用于存储框架、扩展、和程序本身的配置变量
将配置值添加到app.config对象中
还可以从文件或者环境中导入配置值

SECRET_KEY
配置变量是通用密钥,不同的程序使用不同的密钥,保证其他人不知道你所用的密钥

表单类

每个表单都由继承自Form的类表示
Form类中定义了表单中的一组字段,每个字段用对象表示
字段对象附属多个验证函数

验证函数:
用来验证用户提交的输入值是否符合要求

简单的web表单

from flask.ext.wtf import Form 
from wtforms import StringField,SubmitField
from wtforms.validators import Required
class NameForm(Form):
    name = StringField('what's is your name?',validators = [Required()])
    submit = SubmitField('submit')

表单中的字段都定义为类变量
类变量的值是对应字段类型的对象
上边的列子中有一个名为name(类变量)文本字段(类变量的值)和一个名为submit的提交按钮

StringField类
表示属性为type = 'text'<input>元素
SubmitField类
表示属性为type='submit'<input>元素

字段构造函数

name = StringField('what's is your na

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值