验证条件和验证时机详解

验证条件:

  规则的第四个元素,在满足什么样的条件时才去验证,一共提供了三个预设值:  

    存在: 相当于isset()验证:self::EXISTS_VALIDATE, 0(默认为0);

    值不为空验证: 相当于!emtpy():self::VALUE_VALIDATE, 2;

    一定验证: 相当于:if(true), self::MUST_VALIDATE, 1;

验证时机(验证自定义业务逻辑):

  操作层面(业务逻辑层面)

  规则的第六个元素.

  提供了三个时机可用:

  数组中是否有主键值判断

    self::MODEL_INSERT或者1新增数据时候验证, $model->add()方法验证

    self::MODEL_UPDATE或者2编辑数据时候验证, $model->save(), 数组中有主键值

    self::MODEL_BOTH或者3全部情况下验证(默认), 都验证.

时间: 2024-10-25 07:47:10

验证条件和验证时机详解的相关文章

IE浏览器条件注释if IE详解

无论是google还是百度搜到的if IE条件注释用法,排在前面的几个搜索结果文章都是有错误和漏洞的,而这些漏洞和错误导致我一度误以为有些IE条件注释已经失效了,即使不是失效,也令我 很费解.今天抽时间查阅了些老外写的东西,并且都试验了一遍.发现给我造成费解的原因是那些文章大多都是抄来的,没有经过亲自试验,在复制来复制去的过程 中就把某些关键的地方弄错了:( 现将正确的if IE条件注释用法总结一下,以便以后使用: 运算符 示例 说明 ! [if !IE] 非运算符.该例子表示所有的非IE浏览器

jQuery-Validate验证插件的使用步骤详解

1. 写在前面 (友情提示,点我:下载源码) 我们知道,用户在注册的时候,会有个表单页面,然后有些选项是必填的,有些要填的内容是有规范的,这些都要在用户提交之前进行验证才行,如果不符合要求,需要在右边显示一个友好的提示,让用户修改. 记得以前在学习Servlet的时候,实现一个简单的用户注册功能的验证是在后台做的,有些用了正则表达式,有些没用,但是都比较简单.流程是这样的,前台提交表单数据后,servlet获取数据先进行验证,如果不符合要求,将提示信息放到一个List中,然后再把List存到se

条件变量(Condition Variable)详解

转载于:http://blog.csdn.net/erickhuang1989/article/details/8754357 条件变量(Condtion Variable)是在多线程程序中用来实现"等待->唤醒"逻辑常用的方法.举个简单的例子,应用程序A中包含两个线程t1和t2.t1需要在bool变量test_cond为true时才能继续执行,而test_cond的值是由t2来改变的,这种情况下,如何来写程序呢?可供选择的方案有两种: 第一种是t1定时的去轮询变量test_co

STL各种容器的使用时机详解

C++标准程序库提供了各具特长的不同容器.现在的问题是:该如何选择最佳的容器类别?下表给出了概述. 但是其中有些描述可能不一定实际.例如:如果你需呀处理的元素数量很少,可以虎落复杂度,因为线性算法通常对元素本身的处理过程比较快,这种情况下,“显性复杂度搭配快速的元素处理”要比“对数复杂度搭配慢的元素处理”来得划算. 作为对上表的补充,使用时: 1.缺省情况下应该使用vector.vector的内部结构最简单,并允许随机存取,所以数据的存取十分方便灵活,数据的处理也够快. 2.如果经常要在序列头部

STL之七:STL各种容器的使用时机详解

转载于:http://blog.csdn.net/longshengguoji/article/details/8550235 C++标准程序库提供了各具特长的不同容器.现在的问题是:该如何选择最佳的容器类别?下表给出了概述. 但是其中有些描述可能不一定实际.例如:如果你需呀处理的元素数量很少,可以虎落复杂度,因为线性算法通常对元素本身的处理过程比较快,这种情况下,“显性复杂度搭配快速的元素处理”要比“对数复杂度搭配慢的元素处理”来得划算. 作为对上表的补充,使用时: 1.缺省情况下应该使用ve

CSS3属性选择器详解 及 双色球实战开发

在前面的章节中,我们了解了,可以使用行内样式,ID选择器,类选择器,以及标签选择器来给一个元素应用样式. 如果我们想给定义了那些都定义了某一个属性的元素应用样式,这个时候我们该怎么做呢? 这一节中,我将使用 双色球案例 和 文档类型提示图标案例 来引入和应用属性选择器. 双色球案例: 大家都知道,双色球共有7个球,6个红球,1个蓝球.首先我们先在页面上面定义7个span标签: <!DOCTYPE html> <html> <head> <meta charset=

纯干货详解iptables工作原理以及使用方法

简介 网络中的防火墙,是一种将内部和外部网络分开的方法,是一种隔离技术.防火墙在内网与外网通信时进行访问控制,依据所设置的规则对数据包作出判断,最大限度地阻止网络中不法分子破坏企业网络,从而加强了企业网络安全. 防火墙的分类 硬件防火墙,如思科的ASA防火墙,H3C的Secpath防火墙等软件防火墙,如iptables.firewalld等 Linux包过滤防火墙简介 1.Linux操作系统中默认内置一个软件防火墙,即iptables防火墙2.netfilter位于Linux内核中的包过滤功能体

JavaScript 身份证号有效验证详解及实例代码

JavaScript 身份证号有效验证详解及实例代码 这篇文章主要介绍了JavaScript 身份证号有效验证详解及实例代码的相关资料,需要的朋友可以参考下 JavaScript验证身份证号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 <%@ page language="jav

jQuery Validate验证框架详解

jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 一.导入js库 <script type="text/javascript" src="<%=path %>/validate/jquery-1.6.2.min.js"></script> <script type="text/javascript" src