html 字段唯一性校验,使用ModelForm校验数据唯一性
在設(shè)計(jì)模型類的時(shí)候,將指定字段設(shè)置unique=true屬性,可以保證該字段在數(shù)據(jù)庫中的唯一性。
使用ModelForm可以將指定模型類快速生成表單元素。在提交數(shù)據(jù)后,使用is_valid()校驗(yàn)時(shí),如果模型類的某個(gè)字段設(shè)置過unique屬性,那么ModelForm就會(huì)對(duì)其進(jìn)行數(shù)據(jù)唯一性校驗(yàn),校驗(yàn)通過后才允許該數(shù)據(jù)插入數(shù)據(jù)庫
因?yàn)镸odelForm繼承自BaseModelForm,而BaseModelForm中的全局鉤子函數(shù) clean中做設(shè)置了校驗(yàn)數(shù)據(jù)唯一性的操作:
這個(gè)設(shè)置在普通Form對(duì)象中是沒有的(普通Form繼承的是BaseForm):
使用ModelForm校驗(yàn)數(shù)據(jù)唯一性需要注意:
如果重寫了父類的clean方法,必須將self._validate_unique=True帶上,否則該ModelForm對(duì)象不會(huì)對(duì)數(shù)據(jù)進(jìn)行唯一性校驗(yàn)。并且在插入數(shù)據(jù)時(shí)會(huì)發(fā)送如下錯(cuò)誤:
原文:https://www.cnblogs.com/yamx/p/13392445.html
總結(jié)
以上是生活随笔為你收集整理的html 字段唯一性校验,使用ModelForm校验数据唯一性的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java web知识总结——【华清远见】
- 下一篇: IDEA登录github失败:Can‘t