thinkphp 模型验证
<?php
class FormModel extends Model {
// 自动验证设置
/*
* 一:自动验证
自动验证的定义是这样的:array(field,rule,message,condition,type,when,params)
field:代表是数据库的字段名;
rule:代表是规则;
它的值要看type的类型而定;
如果是condition 是function(callback),rule是一个函数名
condition 是in,rule是一个数组
message:代表是消息提示;
condition:代表是验证条件
它的值:
self::MUST_VALIDATE 表示必须验证1
self::VALUE_VAILIDATE 表示不为空的时候验证2
self::EXISTS_VAILIDATE 表示表单存在的字段验证(默认)0
type:代表验证类型
它的值:
function(callback) 表示验证的是调用一个Model中的函数
confirm 表示验证两个字段是否相同
in 是否在某个数组范围之内
equal 验证是否等于某个值
unique 验证某个值是否唯一
regex 使用正则表达式(默认)
when:代表是是否需要执行验证
它的值:
self::INSERT_STATUS add操作的时候验证
self::UPDATE_STATUS update操作的时候验证
self::ALL_STATUS (不用说了吧)
params:参数(具体什么我现在还不太清楚)
* */
protected $_validate = array(
array('title','require','标题必须!',1),//必须验证
array('email','email','邮箱格式错误!',2),//不为空时验证
array('content','require','内容必须'),
array('title','','标题已经存在',0,'unique',self::MODEL_INSERT),
); // 自动填充设置
//array(填充字段,填充内容,填充条件,附加规则)
/* 填充条件包括:
ADD 新增数据的时候处理(默认方式) self::MODEL_INSERT add操作的时候填充
Update 更新数据的时候处理 self::MODEL_UPDATE udate操作的时候填充
ALL 所有情况下都进行处理 self::MODEL_BOTH (不用说了)
附加规则包括:
function 使用函数
callback 回调方法
field 用其它字段填充
string 字符串(默认方式)
*/
protected $_auto = array(
array('status','1',self::MODEL_INSERT),
array('create_time','time',self::MODEL_INSERT,'function'),
); }
?>
thinkphp 模型验证的更多相关文章
- thinkphp模型层Model、Logic、Service讲解
thinkphp模型层Model.Logic.Service讲解 时间:2014-08-24 15:54:56 编辑:一切随缘 文章来源:php教程网 已阅读:771 次 js特效 ...
- ThinkPHP 模型(Model)命名规范
一个小问题搞了好久:如果数据库的表名中有下划线,那么在用thinkphp做自动完成时注意Model类的命名要变成驼峰法,文件名和类名都要变.( 另外注意:只有使用create方法创建数据时才能调用到自 ...
- ThinkPHP 自动验证与自动填充无效可能的原因
原文链接:http://www.5idev.com/p-thinkphp_validate_auto_Invalid.shtml 自动验证与自动填充是在使用ThinkPHP时经常用到的功能,但偶尔会遇 ...
- ThinkPHP自动验证
自动验证是ThinkPHP模型层提供的一种数据验证方法,可以在使用create创建数据对象的时候自动进行数据验证. 验证规则 数据验证可以进行数据类型.业务规则.安全判断等方面的验证操作.数据验证有两 ...
- thinkphp 自动验证
自动验证是ThinkPHP模型层提供的一种数据验证方法,可以在使用create创建数据对象的时候自动进行数据验证. 大理石平台价格表 验证规则 数据验证可以进行数据类型.业务规则.安全判断等方面的验证 ...
- ThinkPHP模型基础类提供的连贯操作方法
ThinkPHP模型基础类提供的连贯操作方法(也有些框架称之为链式操作),可以有效的提高数据存取的代码清晰度和开发效率,并且支持所有的CURD操作. 直线电机哪家好 使用也比较简单, 假如我们现在要查 ...
- webapi - 模型验证
本次要和大家分享的是webapi的模型验证,讲解的内容可能不单单是做验证,但都是围绕模型来说明的:首先来吐槽下,今天下午老板为自己买了套新办公家具,看起来挺好说明老板有钱,不好的是我们干技术的又成了搬 ...
- ASP.NET Core 中文文档 第四章 MVC(2.2)模型验证
原文:Model Validation 作者:Rachel Appel 翻译:娄宇(Lyrics) 校对:孟帅洋(书缘) 在这篇文章中: 章节: 介绍模型验证 验证 Attribute 模型状态 处理 ...
- MVC遇上bootstrap后的ajax表单模型验证
MVC遇上bootstrap后的ajax表单验证 使用bootstrap后他由他自带的样式has-error,想要使用它就会比较麻烦,往常使用jqueyr.validate的话只有使用他自己的样式了, ...
随机推荐
- Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句 # python3 # author lizm # datetime 2018-02-01 10:00:00 # -*- co ...
- linux及安全第六周总结——20135227黄晓妍
总结部分: 操作系统内核三大功能: 进程管理,内存管理,文件系统 最核心的是进程管理 为了管理,首先要对每一个进程进行描述.进程描述符提供了所有内核需要了解的信息. 进程控制模块:task_struc ...
- 20145325张梓靖 《Java程序设计》第16周课程总结
20145325张梓靖 <Java程序设计>第16周课程总结 实验报告链接汇总 实验一 "Java开发环境的熟悉" 实验二 "Java面向对象程序设计&quo ...
- Django-ORM查询api
models.py示例 class Book(models.Model): nid=models.AutoField(primary_key=True) title=models.CharField( ...
- POJ 3436 ACM Computer Factory(最大流+路径输出)
http://poj.org/problem?id=3436 题意: 每台计算机包含P个部件,当所有这些部件都准备齐全后,计算机就组装完成了.计算机的生产过程通过N台不同的机器来完成,每台机器用它的性 ...
- javascript method.
//**************************************************************** //* 名 称:DataLength //* 功 能:计算数据的长 ...
- 在线教育工具—白板系统的迭代1——bug监控排查
近一年都在做一款在线教育工具(以下统称为“白板”)的开发工作,期间遇到N多的问题与坑,遂在此记录,并及时更新. 第一篇:关于资源访问填坑 因为是在线授课,所以使用我们白板的人员地域范围较广,基本上西到 ...
- UriComponentsBuilder和UriComponents url编码
Spring MVC 提供了一种机制,可以构造和编码URI -- 使用UriComponentsBuilder和UriComponents. 功能相当于 urlencode()函数,对url进行编码, ...
- 网络安全:攻击和防御练习(全战课), DDos压力测试
XSS 跨站脚本攻击: Cross-site scripting(简称xss)跨站脚本. 一种网站的安全漏洞的攻击,代码注入攻击的一种.XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法 ...
- 开发集成环境Devilbox安装
一.Devilbox概述 devilbox是一款现代化且高度可定制的开发环境集成,基于docker和docker-compose,支持所有主要平台(win & linux). 它不限制项目的数 ...