博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
flask表单flask-wtf
阅读量:4354 次
发布时间:2019-06-07

本文共 1870 字,大约阅读时间需要 6 分钟。

一、安装pip install flask-wtf二、创建一个flask的项目引入相对应的包from flask import Flask,render_templateimport flask#引入模块from flask_wtf import FlaskForm,CsrfProtect#如果输入的是字符串那么就用StringField,如果是整数那么就用IntegerFieldfrom wtforms import StringField,IntegerField#验证方式from wtforms.validators import Length,EqualTo,InputRequired三、配置文件#coding:utf8import osSECRET_KEY = os.urandom(24)四、配置import configapp = Flask(__name__)app.debug = Trueapp.config.from_object(config)CsrfProtect(app)五、创建一个验证的类class RegistForm(FlaskForm):    username = StringField(validators=[Length(min=3,max=10,message=u"用户名长度有问题")])    password = StringField(validators=[Length(min=6,max=20)])    age = IntegerField(validators=[InputRequired()])六、在路由代码中使用@app.route('/',methods=["GET","POST"])def index():    if flask.request.method == "GET":        return render_template("index.html")    else:        form = RegistForm(flask.request.form)        if form.validate():            username = form.username.data            password =form.password.data            print username,password            return u"登录成功"        else:            print form.errors            return u"错误"注意点:创建的验证类的字段要和前端html模板页面的name值的一样的七、WTForms支持的HTML标准字段字段类型      说  明StringField 文本字段TextAreaField 多行文本字段PasswordField 密码文本字段HiddenField 隐藏文本字段DateField 文本字段,值为 datetime.date 格式DateTimeField 文本字段,值为 datetime.datetime 格式IntegerField 文本字段,值为整数DecimalField 文本字段,值为 decimal.DecimalFloatField 文本字段,值为浮点数BooleanField 复选框,值为 True 和 FalseRadioField 一组单选框SelectField 下拉列表SelectMultipleField 下拉列表,可选择多个值FileField 文件上传字段SubmitField 表单提交按钮FormField 把表单作为字段嵌入另一个表单FieldList 一组指定类型的字段八、常见的验证函数验证函数 说  明Email 验证电子邮件地址EqualTo 比较两个字段的值;常用于要求输入两次密码进行确认的情况IPAddress 验证 IPv4 网络地址Length 验证输入字符串的长度NumberRange 验证输入的值在数字范围内Optional 无输入值时跳过其他验证函数Required 确保字段中有数据Regexp 使用正则表达式验证输入值URL 验证 URLAnyOf 确保输入值在可选值列表中NoneOf 确保输入值不在可选值列表中

 

转载于:https://www.cnblogs.com/wt11/p/7566999.html

你可能感兴趣的文章
探偵ガリレオー転写る2
查看>>
快速排序算法C++实现[评注版]
查看>>
七尖记
查看>>
SAP(最短增广路算法) 最大流模板
查看>>
用极大化思想解决矩形问题学习笔记
查看>>
Django REST Framework 简单入门
查看>>
Hibernate中fetch和lazy介绍
查看>>
修改ip脚本
查看>>
解析xlsx与xls--使用2012poi.jar
查看>>
java5,java6新特性
查看>>
【LOJ】#2290. 「THUWC 2017」随机二分图
查看>>
SSL-ZYC 活动安排
查看>>
Git clone 报错 128
查看>>
在Python中执行普通除法
查看>>
编译原理(第三版) 语法分析器
查看>>
c# 动态绘制直线和曲线
查看>>
Spring理解?
查看>>
删除无限循环的文件夹-删除递归文件夹
查看>>
Flash报表控件(FusionCharts) 使用
查看>>
本周总结
查看>>