使用ModelForm校验数据唯一性
2024-09-07 08:24:07
在设计模型类的时候,将指定字段设置unique=true属性,可以保证该字段在数据库中的唯一性。
使用ModelForm可以将指定模型类快速生成表单元素。在提交数据后,使用is_valid()校验时,如果模型类的某个字段设置过unique属性,那么ModelForm就会对其进行数据唯一性校验,校验通过后才允许该数据插入数据库
因为ModelForm继承自BaseModelForm,而BaseModelForm中的全局钩子函数 clean中做设置了校验数据唯一性的操作:
这个设置在普通Form对象中是没有的(普通Form继承的是BaseForm):
使用ModelForm校验数据唯一性需要注意:
如果重写了父类的clean方法,必须将self._validate_unique=True带上,否则该ModelForm对象不会对数据进行唯一性校验。并且在插入数据时会发送如下错误:
最新文章
- [C#6] 1-using static
- FastDFS 通过文件名获取文件信息
- [LeetCode]Lowest Common Ancestor of a Binary Search Tree
- dubbo源码分析4-基于netty的dubbo协议的server
- javaWeb 使用 jsp 和 javaBean 实现计算器功能
- PHP 页面编码声明方法(header或meta)
- 高效的网络流dinic算法模版
- 14.6.3.3 Making the Buffer Pool Scan Resistant
- Gwt 整合FusionCharts及封装搜狗地图时出现的问题
- js+dom开发第十六天
- 大话NoSql
- android使用TextView实现跑马灯的效果(1)
- 好用的有多种样式的搜索界面创建UISearchBar
- Rabbit MQ 延迟插件rabbitmq_delayed_message_exchange的使用
- python学习08
- 从Redis中删除大集合对象的方法
- [Hook] 跨进程 Binder 学习指南
- Oracle 双字段过滤
- 在 Linux 系统中安装Load Generator ,并在windows 调用
- jupyter notebook不小心点了退出,怎么找到密码