本文基于Django 表单验证 一文,补充完善表单验证器之自定义表单验证器

具体步骤总结如下:

第一:在formValidation.py 文件中,添加自定义名称敏感验证器(NameValidation)

# 自定义名称敏感校验器
class NameValidation:def __call__(self, value):"""自定义验证:param value: value表示要验证的数据:return: 如果ValidationError表示验证失败 正常结束表验证通过"""nameList = ["笑嘻嘻", "妈蛋", "滚犊子"]for name in nameList:if value.find(name) != -1:raise ValidationError("名称不能含有敏感词汇")

第二:在BookForm 表单验证对象中,添加validators(验证器)属性列表,并初始化名称敏感校验器。

完整formValidation.py 代码:

from django import forms
from django.core.validators import ValidationError, RegexValidator# 自定义名称敏感校验器
class NameValidation:def __call__(self, value):"""自定义验证:param value: value表示要验证的数据:return: 如果ValidationError表示验证失败 正常结束表验证通过"""nameList = ["笑嘻嘻", "妈蛋", "滚犊子"]for name in nameList:if value.find(name) != -1:raise ValidationError("名称不能含有敏感词汇")# Book 表单验证器
class BookFrom(forms.Form):"""验证Book表单"""name = forms.CharField(required=True,max_length=10,min_length=2,validators=[# 自定义验证器NameValidation()],error_messages={"required": "名称必填","max_length": "名称不能超过十位","min_length": "名称至少是两位"})author = forms.CharField(required=True,error_messages={"required": "作者必填"})

其他控制层views.py 文件无需修改。

Django 表单验证之自定义表单验证器相关推荐

  1. antd vue表单验证_antd-for-vue 表单验证失效 自定义表单验证使表单非空验证失效(其他验证失效)...

    ## antd-for-vue 表单验证失效 自定义表单验证使表单非空验证失效(其他验证失效) ##### antd 的 表单校验方法包括 validateFields 和 validateField ...

  2. 表单验证与自定义表单验证

    / 验证规则 rules: { // 多个验证用数组 单个验证用对象// 验证账号acc: [{ required: true, message: '不能为空', trigger: 'blur' }, ...

  3. 自定义表单mysql_创建自定义表单

    自定义表单模块,用于收集访问前端的用户的信息. 自定义表单能够用于创建用户交互界面,用户提交的信息保存在Orchard站点中,能够随时导出. 打开Custom Forms模块 Custom Forms ...

  4. java自定义表单系统_表单识别:自定义表单模板无需额外定制

    在各行各业中,Excel和WPS是办公标配工具,办公的时候,我们经常遇到这样一个需求:将纸质表格/表格图片导入Excel. 面对这种需求,多数人会选择在Excel中新建表单,对照着图片将内容一点一点敲 ...

  5. dedecms 自定义表单html,dedecms自定义表单和自定义表单如何用自己模板教程

    dedecms自定义表单和自定义表单如何用自己模板视频教程,无声,但有具体的操作和演示的模板,以及详细的说明. 在线预约一个表单,后台可以直接实现自定义表单功能 注意看有个 表单的id 其他的不用管, ...

  6. java自定义表单系统_自定义表单二次开发

    自定义表单二次开发 === 自定义表单的页面和业务逻辑增强采用JS增强和Java增强实现.![输入图片说明](https://static.oschina.net/uploads/img/201804 ...

  7. EasyUI表单验证,自定义插件验证,自定义js插件验证,远程验证,常见手机号,中英文,qq等验证规则验证...

     { field : 'startPort', title : "起始端口", editor: "text", width : 50, editor: { ...

  8. EasyUI表单验证,自定义插件验证,自定义js插件验证,远程验证,常见手机号,中英文,qq等验证规则验证

     { field : 'startPort', title : "起始端口", editor: "text", width : 50, editor: { ...

  9. 微信小程序表单提交及自定义表单验证

    实例作用:帮助开发者获取input.text以及页面data数据进行提交 适用范围:小程序的所有基础库 wxml中的绑定 <textarea placeholder="文本类型&quo ...

最新文章

  1. php 自动返回,PHP实现自动识别Restful API的返回内容类型
  2. 转VS2010解决方案转换到VS2008
  3. spring定时器总结
  4. 我的SWT与数字图像处理总结(3)—SWT如何得到图像某个位置的像素值和相应的RGB的值...
  5. vs连接Oracle 客户端库时引发 BadImageFormatException
  6. Codeforces Round #320 (Div. 2) [Bayan Thanks-Round]
  7. Apache Shiro Java 反序列化漏洞解决修复记录
  8. spark--环境搭建--4.ZooKeeper345集群搭建
  9. Java中BitSet使用(转)
  10. 关于安卓设备更改和烧录IMEI的图文教程
  11. Linux下安装Java环境
  12. 中兴盒子ZTE-B860AV1.1T、AV2.1-通刷-线刷固件
  13. 【2018华科机试】十二进制
  14. 申请手册:英国百所大学中文名称及网址
  15. 影子卫士 Shadow Defender 2011
  16. xshell如何导入.xsh 文件
  17. 计算机毕业设计Java班费收支管理系统(源码+系统+mysql数据库+lw文档)
  18. Python实现2048小游戏
  19. 汪升华c语言答案,2019年书名C语言程序设计教程.doc
  20. 杨老师课堂之网页制作HTML的学习入门-含有案例

热门文章

  1. 【】02-07主定理
  2. 电赛2019年F题纸张测量FDC2214的初始化代码(含STM32f103zet6和f103c8t6)胎教式
  3. 在Windows中添加右键菜单选项及快捷键(转)
  4. SQL实现排序,并输出序号
  5. NFT 的 10 种实际用途
  6. Python写诗如梦令·李清照
  7. 通灵学院|游戏设计研习5:游戏机制的平衡★(4300字)
  8. Linux下基本指令
  9. [Vs提示:不允许使用不完整类型]使用结构体常犯的错误
  10. acwing基础课——堆