场景验证无效

浏览:622 发布日期:2018/04/25 分类:求助交流
不知道是我使用方法有问题还是根本就不生效, 这个地方总是会 使用上面定义的验证规则 不会使用 自定义 only 这个里面的规则 !求帮看下,谢谢!

图片呢? 上传不了? 那我贴代码 了

这是验证器类<?php

namespace app\version1\validate;

use think\Validate;

class MbInfo extends Validate {
    protected $rule = [
        'mobile|手机号码' => 'require|mobile|unique:mb_info',
        'password'   => ['require', 'regex' => '/^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,10}$/'],
        'rePassword' => 'require|confirm:password',
    ];
    protected $message = [
        'mobile.require'     => '手机号必须填写',
        'mobile.mobile '     => '填写的必须是手机号码',
        'password.require'   => '密码必填',
        'password.regex'     => '密码必须是6至10位的字母和数字的组合',
        'rePassword.require' => '请确认密码',
        'rePassword.confirm' => '密码不一致'
    ];

    protected $scene = [
        'validateMobile' => ['mobile'],
        'add'  => ['mobile', 'password', 'rePassword']
    ];

    public function sceneForgetPassword() {
        return $this->only(['mobile', 'password', 'rePassword'])->remove('mobile', 'unique');
    }
}
这是调用 的地方$validate = new MbInfo();
        $res = $validate->sceneForgetPassword()->check($data);
        if ($res !== true) {
            $msg = $validate->getError();
            return apiJson(10006, $msg);
        }
最佳答案
评论() 相关
后面还有条评论,点击查看>>