- 创建验证类
- 上节课,使用的快速验证,适合小规模单独的验证;
- 也创建一个验证类,把验证规则写到验证类里,然后调用;
php artisan make:request Form
c. 验证类Http\Request\Form.php创建好之后,会提供两个固定方法;
public function authorize()
{
// 默认 false,为关闭授权,关闭状态会403
// 比如判断这个用户是否有操作权限
return true;
}
public function rules()
{
return [
//规则
‘username’ => ‘required|min:2|max:10’,
‘password’ => ‘required|min:6’
];
}
d. 在控制器端,直接使用验证类进行验证即可,其他和快速验证一样
//通过验证类验证
$request->validated();
e. 默认错误提示是英文的,如果想设置成中文提示,可在验证类创建message();
//验证器类方法
public function messages()
{
return [
‘username.required’ => ‘用户名不得为空~’,
‘username.min’ => ‘用户名不得小于10位~’,
‘username.max’ => ‘用户名不得大于10位~’,
'password.required' => '密码不得为空~',<br /> 'password.min' => '密码不得下于6位~'<br /> ];<br /> }
f. 也可以自定义属性名,而其它采用默认提示;
public function attributes()
{
return [
‘username’ => ‘用户名’
];
}
g. 在请求验证之前,修改提交的请求数据;(无论你在用户名输入框填什么都是下面的Mr.Lee)
protected function prepareForValidation(){
$this->merge([
‘username’ => ‘Mr.Lee’
]);
}