thinkphp6的验证规则记录

1、自定义验证器:

class Admin extends validate
{
protected $rule = [
    'catename' => 'unique:cate|require|length:4,25'
];
protected $message = [
    'catename.require' => '请填写栏目名称',
    'catename.unique' => '栏目已存在',
    'catename.length' => '长度不在3-5个字符',
];
protected $scene=['add'=>['catename'],'edit'=>['catename']]
 }

2. 模型层或控制层

  public function edit(){
        $ad=new Adverts();
        if(request()->isPost()){
            $data=input('post.');
            $validate = new AdValidate();
            if(!$validate->scene('edit')->check($data)){
                return $this->return_msg(200,$validate->getError());
            }
            $save=$ad->update($data);
            if($save){
                return $this->return_msg(0,'修改成功');
            }else{
                return $this->return_msg(200,'修改失败');

            }
        }
     
        return view();
    }

规则是:unique:【模型类名(或表名)】,【要验证的字段(或者包含=号或者包含^号,但是必须把本身的条件加入,别以为前面有name了就不把name本身加进去了)】,【要排除的字段】,【主键(可不填)】


为了方便大家可以访问thinkphp6的验证规则,地址为:https://www.kancloud.cn/manual/thinkphp6_0/1037629



分享到: