django model_fields_validators 前端页面编辑自定义验证
# model_field_validators.py import re
from django.core.exceptions import ValidationError
from django.utils.translation import gettext_lazy as _ def person_id_validator(value):
"""
对用户身份证进行自定义验证
:param value:验证的字段值
:return:身份格式不正确
"""
ID_compile = re.compile(r'([A-Za-z](\d{6})\(\d\))|(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X|x)$')
if not ID_compile.match(value):
raise ValidationError(u"身份证格式不正确") def zip_code_validator(value):
"""
对邮政编码进行自定义验证
:param value: 验证的字段值
:return:邮政编码格式不正确
"""
zip_code = re.compile('^[0-9]\\d{5}$')
if not zip_code.match(value):
raise ValidationError(u"邮政编码格式不正确") def password_validator(value):
"""
对密码进行自定义验证
:param value: 验证的字段值
:return:以字母开头,长度在6~18之间,只能包含字符、数字和下划线
"""
password = re.compile('^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z_]{8,16}$')
if not password.match(value):
raise ValidationError(u'以字母开头,长度在6~18之间,只能包含字符、数字和下划线') # models
person.py
from utils.model_field_validators import person_id_validator
password = models.CharField(validators=[password_validator],max_length=100, verbose_name=u'密码', null=True, blank=True)
zip_code = models.CharField(validators=[zip_code_validator],max_length=50, verbose_name=u'邮政编码', null=True, blank=True)
django model_fields_validators 前端页面编辑自定义验证的更多相关文章
- [Django] html 前端页面jQuery、图片等路径加载问题
严格的说这个话题应该属于一个html前端路径加载问题.为了实现一个局部更新页面的功能,简单了解了一下Ajax.Ajax是一个为了实现浏览器和服务器异步通信功能的模块.严格来说不是一个新的语言,只是JS ...
- jquery验证前端页面
一共三个页面 jquery.html文件(前端页面,jquery验证用户信息) jquerytest.php文件(后台处理页面) jquerydb.php文件(数据库) 数据表结构 jquery.ht ...
- Django项目:CRM(客户关系管理系统)--38--30PerfectCRM实现King_admin编辑自定义字段验证
# kingadmin.py # ————————04PerfectCRM实现King_admin注册功能———————— from crm import models #print("ki ...
- Django项目:CRM(客户关系管理系统)--37--29PerfectCRM实现King_admin编辑自定义限制
#base_admin.py # ————————24PerfectCRM实现King_admin自定义操作数据———————— from django.shortcuts import render ...
- Django实战(一)-----用户登录与注册系统3(前端页面、登录视图)
基本框架搭建好了后,我们就要开始丰富页面内容了.最起码,得有一个用户登录的表单不是么?(注册的事情我们先放一边.) 一. 原生HTML页面 删除原来的login.html文件中的内容,写入下面的代码: ...
- Python之路-(js正则表达式、前端页面的模板套用、Django基础)
js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../ 用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...
- MVC身份验证.MVC过滤器.MVC6关键字Task,Async.前端模拟表单验证,提交.自定义匿名集合.Edge导出到Excel.BootstrapTree树状菜单的全选和反选.bootstrap可搜索可多选可全选下拉框
1.MVC身份验证. 有两种方式.一个是传统的所有控制器继承自定义Control,然后再里面用MVC的过滤器拦截.所以每次网站的后台被访问时.就会先走入拦截器.进行前端和后端的验证 一个是利用(MVC ...
- Django实现图片上传并前端页面显示
Django实现图片上传和图片显示 开始之前我们先确认环境中已经安装了Pillow,如果没有安装,可以通过pip install Pillow来安装,这个是python的图像处理库 数据库设置 我们创 ...
- Python Django CMDB项目实战之-3创建form表单,并在前端页面上展示
基于之前的项目代码 Python Django CMDB项目实战之-1如何开启一个Django-并设置base页.index页.文章页面 Python Django CMDB项目实战之-2创建APP. ...
随机推荐
- gophercloud openstack networking 源码分析
1.network 部分 // Package networks contains functionality for working with Neutron network resources. ...
- 初识Locust---认识
性 能测试工具: 基于Python的性能测试工具-locust 现在性能测试方面有很多测试工具,比如我们熟悉的loadrunner.jmeter.ab等,用过的也就是这几种,如果是学过这些工具的可能对 ...
- hadoop namenode
存储文件系统元数据,例如:文件目录结构,不同文件的分块情况,每块存储在那个节点,权限等 这些元数据全部存储在内存中,所以,namenode要求内存比较大 hdfs在存文件的时候会按照块存储,每一块默认 ...
- SVN如何切换用户对代码进行操作
在使用svn更新或提交数据时需要输入用户名和密码,在输入框中可以选择是否记录,以便下次操作无需再次输入用户名和密码: 要切换其他用户名时,需要删除已记录用户的数据,在电脑桌面上右击,依次点击菜单项To ...
- hadoop23---自定义rpc架构(duboo的原理)
- UILable 的 属性设置
//UILable的大小自适应实例 UILabel *myLable = [[UILabel alloc] initWithFrame:CGRectMake(, , , )];//设定位置与大小 [m ...
- HDU2385Stock
/*既然前一天的可以省下来给过后一天卖,那么就倒着卖,那么最后一天的只能在最后一天卖,如果可以卖完,还有可卖的名额,那么就从 倒数第二天取,如果卖不完只能丢掉,而且必定是尽量留到价格最高的那一天卖*/ ...
- poj2993
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; stru ...
- Python3.x:pdf2htmlEX(解析pdf)安装和使用
Python3.x:pdf2htmlEX(解析pdf)安装和使用 简介 pdf2htmlEX是一款优秀的pdf转换成html的工具: 下载 windows下载地址:http://soft.rubypd ...
- 仿京东Tab商品切换
在线演示 本地下载