自定义表单验证的问题

自定义表单验证的问题

https://img1.sycdn.imooc.com//climg/64c9f91709a77f3e09000532.jpg

老师这个验证我可不可以理解为,就因为validate后是username所以它会去验证username?

如果它是password就验证password?那我再打个比方如果上边没有字段city但是我validate_city是不是就报错了?我的理解对吗?我的疑惑就是怎么判断查找username的

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小猿 2023-08-02 15:08:41

同学,你好!同学理解的正确,表单类里面例如定义validate_username,我们将自定义的验证函数validate_username绑定到了username字段上。当调用form.validate_on_submit()方法时,会自动调用validate_username函数来验证username字段的值。如果没有定义字段则无法执行到该验证函数

祝学习愉快~

  • 提问者 qq_慕婉清1197770 #1

    老师还有一个问题,这个html中进行判断时这个errors是哪里来的?app.py中的吗?https://img1.sycdn.imooc.com//climg/64ca041b094891ad04800157.jpg

    https://img1.sycdn.imooc.com//climg/64ca04300970a7be02790102.jpg

    2023-08-02 15:22:33
  • 提问者 qq_慕婉清1197770 #2

    这个validate_on_submit我也有点不理解

    2023-08-02 15:23:55
  • 同学,你好!用户在提交表单的时候,会触发validate_on_submit。以注册表单为例,当用户点击“注册”按钮时会执行validate_on_submit方法

    https://img1.sycdn.imooc.com//climg/64ca0ede09d8872604760296.jpg

    会对表单进行验证,当表单中有字段验证失败会抛出异常,如对username字段验证失败时会抛出异常

    https://img1.sycdn.imooc.com//climg/64ca0f5f0900da1b05240226.jpg

    前端html 的form.usernames.errors指的是username抛出的异常信息,如下是因为手机号不全是数字抛出的异常,异常值是字典嵌套列表的形式,所以使用for err  in from.username.errors循环输出错误的内容

    https://img1.sycdn.imooc.com//climg/64ca10e3098bbf4607240028.jpg

    https://img1.sycdn.imooc.com//climg/64ca0ff009fa55fc11580228.jpg

    2、form.errors在终端对表单验证的错误信息进行输出

    https://img1.sycdn.imooc.com//climg/64ca12bb096bd2b708480437.jpg

    祝学习愉快~

    2023-08-02 16:22:18
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师