我有一个自定义的“基础”验证器
class BaseUserRequest extends FormRequest
{
...
public function messages()
{
return [
'password.min' => 'Custom error',
];
}
}
其他验证者扩展“基础”类
class RegisterUserRequest extends BaseUserRequest
{
...
public function messages()
{
return parent::messages();
}
}
当我尝试在使用password:min
的表单上触发RegisterUserRequest
错误时,我收到默认邮件而不是“自定义错误”消息。我的RegisterUserRequest
课有什么问题?
如果我使用BaseUserRequest
,我会收到“自定义错误”消息。类继承有问题。
更新(已解决的问题):我忘了在验证上注册规则
不
return Validator::make($data, (new RegisterUserRequest())->rules());
但
return Validator::make($data, (new RegisterUserRequest())->rules(), (new RegisterUserRequest())->messages());
答案 0 :(得分:0)
试试这种方式
php artisan make:request BaseUserRequest
// app / Http / Requests / BaseUserRequest.php
public function messages()
{
return [
'password.min' => 'Custom error',
];
}
// app / Http / Controllers / UserController.php
use App\Http\Requests\BaseUserRequest;
public function register(BaseUserRequest $request)
{
// register code here
}