增加 default_validate 参数 用于设置默认的验证器名(用于controller和model的validate方法) 控制器类的validate方法增加callback参数在验证之前执行某个方法

This commit is contained in:
thinkphp
2016-03-21 14:31:48 +08:00
parent 27f3127fbb
commit 0583e4d2b6
3 changed files with 9 additions and 4 deletions

View File

@@ -147,17 +147,20 @@ class Controller
* @param array $data 数据
* @param string|array $validate 验证器名或者验证规则数组
* @param array $message 提示信息
* @param mixed $callback 回调方法(闭包)
* @return void
*/
public function validate($data, $validate, $message = [])
public function validate($data, $validate, $message = [], $callback = null)
{
if (is_array($validate)) {
$v = Loader::validate();
$v = Loader::validate(Config::get('default_validate'));
$v->rule($validate);
} else {
$v = Loader::validate($validate);
}
if (is_callable($callback)) {
call_user_func_array($callback, [$v, &$data]);
}
if (is_array($message)) {
$v->message($message);
}