【ThinkPHP学习】模型Model的自定义

本文介绍了ThinkPHP中模型Model的自定义,重点在于自动验证和自动完成。通过$_validate数组实现静态验证,配合系统内置正则规则进行数据检查,并设置相应的错误提示。验证条件包括三种情况,验证时间可在创建或更新数据时触发。create方法根据POST数据自动判断新增或编辑,并可通过getData()获取数据源。动态验证允许在验证前定义rules数组,适用于不依赖具体模型类的情况。自动完成则利用$_auto数组,例如在保存时自动添加日期或对密码进行MD5加密。
摘要由CSDN通过智能技术生成

RT.

ThinkPHP允许用户进行自定义Model类。目前我所学到的,Model类的作用是用来作自动验证,自动完成。一旦自定义了Model类,实例化模型类的时候就需要使用D方法而不是M方法,D方法实例化的时候是实例化某个具体的模型类,M方法适用于只是对数据表进行基本的CURD操作,因为他不需要加载具体的模型类,所以性能会更高。

例如我在我的User模型类中使用$_validate数组来对提交的数据进行自动验证,这种定义属于静态定义。

array(
array( 验证字段 1, 验证规则 , 错误提示 ,[ 验证条件 , 附加规则 , 验证时间 ]),
array( 验证字段 2, 验证规则 , 错误提示 ,[ 验证条件 , 附加规则 , 验证时间 ]),
......
 );

验证字段就是需要进行验证的数据项字段的名称。

验证规则要使用,需配合附加规则,在使用正则验证的前提下,系统内置了一些常用的正则验证的规则,可以直接作为验证规则使用,包括字段必须require,email邮箱,url URL地址,currency货币,number数字。

提示信息,用于用户提交数据验证失败之后的提示信息定义。

验证条件,包括三种情况:

self::EXISTS_VALIDATE 或者0 存在字段就验证(默认)
self::MUST_VALIDATE 或者1 必须验证
self::VALUE_VALIDATE或者2 值不为空的时候验证</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值