转自:http://blog.csdn.net/cwjcwj520/article/details/17330845

例子为想在创建用户名的时候验证输入字符是否有效,并且插入了even_field为Category

model.py 中加入:

from django.core.exceptions import ValidationError
import re

def validate_letter(value):
    p = re.compile(r'^[\d\w_]{1,30}$')
    if p.match(value) == None:
        raise ValidationError(u"Username can only have digital, letter and '_'.")

def validate_even(value):
    print 'validate_even'
    if value % 2 != 0:
        raise ValidationError(u'%s is not an even number' % value)

class Category(models.Model):
    title = models.CharField(max_length=100, db_index=True, validators=[validate_letter])

slug = models.SlugField(max_length=100, db_index=True)

even_field = models.IntegerField(validators=[validate_even])

最新文章

  1. 找不到库文件地址,修改修改方法framework
  2. Xcode 7安装KSImageNamed失败解决方法
  3. 20141017--类型String类
  4. HDU 4483 Lattice triangle(欧拉函数)
  5. Linux编译安装Darwin Streaming Server 6.0.3。。。
  6. HDOJ2010水仙花数
  7. linux ftp安装和配置
  8. 使用dom4j解析XML例子
  9. ES6中Promise对象个人理解
  10. C++ 文件流的方式操作文件(一个简单的写入,读取)
  11. 《C#并发编程经典实例》学习笔记—2.2 返回完成的任务
  12. jekins构建触发器详解-日程表的使用
  13. 计算macd与ma技术指标
  14. 使用C#开发数据库应用程序
  15. 基于Shader实现的UGUI描边解决方案
  16. Spark 介绍(基于内存计算的大数据并行计算框架)
  17. 一款APP的交互文档从撰写到交付
  18. 源码速读及点睛:HashMap
  19. 3、JVM--垃圾回收期和内存分配策略(1)
  20. POJ3378_Crazy Thairs

热门文章

  1. Apache 配置文件详解
  2. linux 停止对某个端口的监听
  3. 执行RF测试只生成output.xml文件,不生成log和report文件
  4. 第1章 Ansible 简介
  5. Unity3d OnApplicationPause与OnApplicationFocus
  6. ts+antd报错error TS2605: JSX element type Xxx is not a constructor function for JSX elements
  7. Andoid数据存储之SQLite数据库
  8. linux mutex
  9. C#设计模式--工厂方法模式
  10. LeetCode 78 Subsets (所有子集)