Form表单

问题1:  注册页面输入为空,报错:keyError:找不到password


def clean(self):

print("---",self.cleaned_data)
        #  if self.cleaned_data["password"]==self.cleaned_data["repeat_password"]:        
        #  报错原因:self.cleaned_data是干净数据,如果页面没有输入内容,则self.cleaned_data没有password。
        改如下:
        if self.cleaned_data.get("password")==self.cleaned_data.get("repeat_password"):
            return self.cleaned_data
        else:
            raise ValidationError("两次密码不一致")

2  为什么要用全局clean():

按子段顺序一一校验,即校验到username时,你无法使用self.cleaned_data.get("password")。

而局部钩子使用完,到全局时,已经可以使用所有的self.cleaned_data

3

Django_Form表单补充的更多相关文章

  1. python16_day18【Django_Form表单、分页】

    一.表单 Django的Form主要具有一下几大功能: 生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容 1.Form类 创建Form类时,主 ...

  2. django基础之FBV与CBV,ajax序列化补充,Form表单

    目录: FBV与CBV ajax序列化补充 Form表单(一) 一.FBV与CBV 1.什么是FBV.CBV? django书写view时,支持两种格式写法,FBV(function bases vi ...

  3. JsonResponse类的使用、form表单上传文件补充、CBV和FBV、HTML的模板语法之传值与过滤器

    昨日内容回顾 Django请求生命周期 # 1.浏览器发起请求 到达Django的socket服务端(web服务网关接口) 01 wsgiref 02 uwsgi + nginx 03 WSGI协议 ...

  4. springMVC补充——springMVC的表单标签

    同其他标签一样,使用标签的第一步是进行标签库的导入(如果页面频繁导入比较多的标签库,应当专门建立导入标签库的页面,详见ztree的随笔) 导入标签库: <%@ taglib prefix=&qu ...

  5. jQuery EasyUI API 中文文档 - 表单(form补充)

    继承(表单验证) 第一个参数如果是true那么就算key相同也会接着追加,相反怎会覆盖 $.extend([bool],obj,obj1); var obj = {name:"zhangsa ...

  6. jQuery补充之jQuery扩展/form表单提交/滚动菜单

    jQuery扩展 为了避免重复造轮子,能高效使用别人的代码,所以有了扩展. jQuery扩展有两种方式: 自执行函数方式 定义函数,并执行函数. 自执行函数: (function(jq){ jq.ex ...

  7. web框架-(六)Django补充---form表单验证

    一.form表单验证 1. 常规html页面的form表单验证 常规页面中,如果想实现对表单中用户输入信息的数据验证,需要配合Ajax来实现. 使用前我们先来熟悉下函数参数:request,其中包含的 ...

  8. HTML5 表单的补充+注意事项

    input标签中  type="image" 与 type="submit"属性   的区别    (下文简写image和submit) 1.这两者都可以响应请 ...

  9. python_way day19 HTML-day5 (form表单验证,CSRF,cookie,session,缓存)

    python-way day19 1. dJango的form表单验证 2.CSRF 跨站请求伪造 3.cookie,session 4.缓存 一,django表单验证功能 1.django验证基础: ...

随机推荐

  1. mysql官网下载页面

    http://dev.mysql.com/downloads/mysql/5.6.html#downloads

  2. Linux下查看分区UUID

    有两种方法: 1.#:blkid 2.ls -l /dev/disk/by-uuid/

  3. Eclipse maven 项目红叉 编译不报错问题处理

    项目右键-> Maven ->  Update Maven Project 选中 :Force update 复选框

  4. 一起talk C栗子吧(第八十七回:C语言实例--使用管道进行进程间通信概述)

    各位看官们,大家好.上一回中咱们说的是进程间通信的样例.这一回咱们说的样例是:使用管道进行进程间通信. 闲话休提,言归正转. 让我们一起talk C栗子吧! 我们在前面的的章回中介绍了使用管道进行进程 ...

  5. hive中的join

    建表 : jdbc:hive2://localhost:10000> create database myjoin; No rows affected (3.78 seconds) : jdbc ...

  6. windows 8.1 安装 .Net Framework 3.5

    1.挂载IOS虚拟光驱 2.命令提示符(管理员)   dism.exe /online /enable-feature /featurename:NetFX3 /Source:F:\sources\s ...

  7. Java基础01 从HelloWorld到面向对象(转载)

    Java是完全面向对象的语言.Java通过虚拟机的运行机制,实现“跨平台”的理念. "Hello World!" public class HelloWorld{    publi ...

  8. OpenCV中Camshitf算法学习(补充)

    结合OpenCV中Camshitf算法学习,做一些简单的补充,包括: 实现全自动跟随的一种方法 参考opencv中的相关demo,可以截取目标物体的图片,由此预先计算出其色彩投影图,用于实际的目标跟随 ...

  9. Spring MVC简单URL处理程序映射

    以下示例显示如何使用Spring Web MVC框架来实现一个简单URL处理程序映射. SimpleUrlHandlerMapping类分别显式地将URL映射到相应的控制器上. 所下所示配置 - &l ...

  10. jQuery DOM 元素方法

    函数 描述 .get() 获得由选择器指定的 DOM 元素. .index() 返回指定元素相对于其他指定元素的 index 位置. .size() 返回被 jQuery 选择器匹配的元素的数量. . ...