Validator::make () 把 rule 提取出来不能使用 Rule::in () 的问题?
use Illuminate\Support\Facades\Validator;
use Illuminate\Validation\Rule;
class CategoryValidate extends BaseValidate
{
protected $rule = [
'name' => 'required|max:20|unique:category',
'status' => ['required', Rule::in(['-1', '1'])],
];
protected $message = [
'name.required' => '名称不能为空',
'name.unique' => '名称已存在',
'name.max' => '名称最多20个字符',
'status.required' => '状态值不能为空',
'status.in' => '状态值不正确'
];
protected function check()
{
$this->validator = Validator::make($this->request->all(), $this->rule, $this->message);
}
}
当我吧rule提取出来的时候Rule这个类不能用,报错信息:
Constant expression contains invalid operations
如果使用Rule这种规则只能写到make方法里是吗?
推荐文章: