zoukankan      html  css  js  c++  java
  • 04,Django Form源码阅读

            form is_valid():执行顺序:

     
    前面的注册与登录都写完了,但是心中一致有一个困惑,那就是   
    <wiz_code_mirror>
     
     
     
     
     
     
     
     
     
    1
    if reg_form.is_valid():
     
     
    这段神奇的代码,怎么就帮我们完成了对用户输入内容的校验啦?让我们一探究竟。
            1、首先    Ctrl+左键    点击进入 is_valid()函数查看源码
            2、点击is_bound
    就是在实例化的时候只要form_obj = RegForm(request.POST)括号里面只要有数据那么.is_bound永远True
            3、点击进入self.errors()
            4、点击进入self.full_clean()
            5、点击进入ErrorDict
     


    其实在这里就只是校验了        reg_form = RegForm(request.POST)        实例对象里面有没有值而已


    记下来就是根据我们自定义的校验规则来做校验了!
            然后在点击进入
     
     
     
     
     
     
     
     
     
     
     
     
     
    当我们重写父类的clean()方法时
     
     
    如何将两次输入密码不一致的信息传给模版页面啦?
     
     
     
     
     
  • 相关阅读:
    AcWing 838. 堆排序
    AcWing 240. 食物链
    Sublime下载地址
    【转载】Java 8 Optional的正确姿势
    【SpringBoot】通过server.servlet.context-path设置应用的上下文路径
    【java/Lamda】List.stream().collect(Collectors.toMap(Emp::getId, a->a,(k1,k2)->k2))的意义
    Prometheus修改数据保留时间
    Atitit BLE 协议栈 艾提拉总结 目录 1. ——关于BLE的一些基本概念——
    Atitit 高并发设计实践 艾提拉著 目录 1. 并发的实现俩中模式 并发角度来看 基于事件触发vs线程的 1 2. 负载均衡 1 2.1. 云服务模型paas caas faas+http
    Atitit 锁的不同层级 app锁 vm锁 os锁 硬件锁 目录 1. 在硬件层面,CPU提供了原子操作、关中断、锁内存总线的机制 1 1.1. test and set指令 1 1.2. 锁内
  • 原文地址:https://www.cnblogs.com/pontoon/p/10217374.html
Copyright © 2011-2022 走看看