瓶入门之表单的实现

  


  

  

form.html         {%延伸的常见/基地。html ' %}   {%块标题%}   原生表单   {% endblock %}   {%块pagecontent %}   {# & lt;表单动作=" {{url_for(检查)}}”=皃ost”比方法;#}   & lt;形式行动=" {{url_for(形式)}}”方法=皃ost”比;   & lt; p>用户名:& lt;输入type="文本" name="用户名"占位符=扒胧淙胗没白畲蟪ざ??2”祝辞& lt;/p>   & lt; p>密码:& lt;输入type="密码" name=" userpass占位符=扒胧淙朊苈搿弊4? lt;/p>   & lt; p> & lt;输入类型=疤峤弧眝alue=" https://www.yisu.com/zixun/提交“祝辞& lt;/p>   & lt;/form>   {% endblock %}   之前      jobs

        @app.route('/形式/')   def形式():   返回render_template (“form1.html”)      #接收表单的数据   @app.route('/检查/',方法=['文章'])   def检查():   打印(request.form)   返回“提交过来了”      之前      

将俩个路由地址合并为同一个

        @app.route('//'形式,方法=[“得到”,“POST”])   def形式():   如果请求。方法==癙OST”:   打印(request.form)   返回render_template (“form1.html”)   之前      


  

  

作用:是一个用于表单处理的扩展库提供表单的校验csrf的功能

        pip安装flask-wtf      

使用
  

  

(1)字段类型
  

  

           字段名称   字段类型               StringField   普通文本字段         PasswordField   密码框         SubmitField   提交按钮         TextAreaField   多行文本域         HiddenField   隐藏域         DateField   日期         DateTimeField   日期时间         IntegerField   整形         实域   浮点型         RadioField   单选字段         SelectField   下拉         FileField   文件上传字段         BooleanField   布尔字段            

  

(2)验证器
  

  

           验证器   说明               DataRequired   必填         长度   长度最小值最大         IPAddress   IP地址         电子邮件   邮箱         URL   地址         正则表达式   正则匹配         等于   验证俩个字段值的正确性         NumberRange   输入值的范围最小马克斯            

  

实例   

在管理中         从进口瓶瓶,render_template,请求   从flask_script进口部经理   从flask_bootstrap导入引导   #导入自定义表单类的基类   从flask_wtf进口FlaskForm   #导入表单的字段   从wtforms进口StringField PasswordField SubmitField   #导入验证器   从wtforms。验证器进口长度、DataRequired      应用=瓶(__name__)   引导=引导(应用)   #加密种子csrf需要使用   app.config [' SECRET_KEY ')=' abcdedff '   经理=经理(应用)      类登录(FlaskForm):   用户名=StringField(“用户名”,验证器=[长度(min=6, max=12,消息='用户名的长度为6 ~ 12为),DataRequired(消息='用户名不能为空! ! ! ')))   userpass=PasswordField(“密码,验证器=[长度(min=6, max=12,消息='用户名的长度为6 ~ 12为),DataRequired(消息=懊苈氩荒芪? ! ! ')))   提交=SubmitField(“登录”)      @app.route (“/?   def指数():   返回render_template (index . html)      @app.route('//'形式,方法=[“得到”,“POST”])   def形式():   #将表单类实例化   形式=登录()   如果请求。方法==癙OST”:   #验证是否存在正确的csrftoken和数据的正确性如果都正确则为真   如果form.validate_on_submit ():   #打印(request.form)   打印(form.username.data)   返回render_template (form2.html,形式=形式)   从进口瓶瓶,render_template,请求   从flask_script进口部经理   从flask_bootstrap导入引导   #导入自定义表单类的基类   从flask_wtf进口FlaskForm   #导入表单的字段   从wtforms进口StringField PasswordField SubmitField   #导入验证器   从wtforms。验证器进口长度、DataRequired         应用=瓶(__name__)   引导=引导(应用)   #加密种子csrf需要使用   app.config [' SECRET_KEY ')=' abcdedff '   经理=经理(应用)      类登录(FlaskForm):   用户名=StringField(“用户名”,验证器=[长度(min=6, max=12,消息='用户名的长度为6 ~ 12为),DataRequired(消息='用户名不能为空! ! ! ')))   userpass=PasswordField(“密码,验证器=[长度(min=6, max=12,消息='用户名的长度为6 ~ 12为),DataRequired(消息=懊苈氩荒芪? ! ! ')))   提交=SubmitField(“登录”)      @app.route (“/?   def指数():   返回render_template (index . html)      @app.route('//'形式,方法=[“得到”,“POST”])   def形式():   #将表单类实例化   形式=登录()   如果请求。方法==癙OST”:   #验证是否存在正确的csrftoken和数据的正确性如果都正确则为真   如果form.validate_on_submit ():   #打印(request.form)   打印(form.username.data)   返回render_template (form2.html,形式=形式)

瓶入门之表单的实现