• 技术文章 >Python框架 >Flask

    flask如何处理表单

    silencementsilencement2019-07-29 14:36:53原创4677

    Flask请求对象包含客户端发出的所有请求信息。其中,request.form 能获取POST 请求中提交的表单数据。尽管Flask 的请求对象提供的信息足够用于处理Web 表单,但有些任务很单调,而且要重复操作。比如,生成表单的HTML 代码和验证提交的表单数据。Flask-WTF(http://pythonhosted.org/Flask-WTF/)扩展可以把处理Web 表单的过程变成一种愉悦的体验。这个扩展对独立的WTForms(http://wtforms.simplecodes.com)包进行了包装,方便集成到Flask 程序中。Flask-WTF 及其依赖可使用pip 安装:

     pip install flask-wtf

    使用Flask-WTF 时,每个Web 表单都由一个继承自Form 的类表示。这个类定义表单中的一组字段,每个字段都用对象表示。字段对象可附属一个或多个验证函数。验证函数用来验证用户提交的输入值是否符合要求。

    是一个简单的Web 表单,包含一个文本字段和一个提交按钮。

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

    Form 基类由Flask-WTF 扩展定义,所以从flask.ext.wtf 中导入。字段和验证函数却可以直接从WTForms 包中导入。  

    这个表单中的字段都定义为类变量,类变量的值是相应字段类型的对象。在这个示例中,NameForm 表单中有一个名为name 的文本字段和一个名为submit 的提交按钮。StringField类表示属性为type="text" 的<input> 元素。SubmitField 类表示属性为type="submit" 的

    <input> 元素。字段构造函数的第一个参数是把表单渲染成HTML 时使用的标号。StringField 构造函数中的可选参数validators 指定一个由验证函数组成的列表,在接受用户提交的数据之前验证数据。验证函数Required() 确保提交的字段不为空。

    WTForms 支持的HTML 标准字段如下表

    28566261b55e3a1b01688b1a87ff52f.png

    WTForms验证函数如下表:

    05ed0656359b19e98fc2ca3bda677b1.png

    专题推荐:flask
    上一篇:flask里如何实现分页功能 下一篇:flask可以做大型网站吗

    相关文章推荐

    • python怎么安装flask• 导入flask类 为什么说没有定义• flask使用redis如何配置

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网