我在控制器操作中使用以下代码进行验证。我 100% 确定这是用于验证的代码,因为删除和添加验证按预期工作:
$this->validate($request, [
'email' => 'required|email',
'password' => 'required'
], [
'email.required' => 'Vul een e-mailadres in.',
'email.email' => 'Vul een geldig e-mailadres in.',
'password.required' => 'Vul een wachtwoord in.'
]);
问题是它一直显示默认错误消息(“电子邮件字段是必需的。”)而不是我提供的消息(“Vul een e-mailadres in.”)。
我正在使用以下代码在视图中显示错误:
{{ $errors->first('email') }}
我想这是正确的方法,因为当我在 PhpStorm 中选择 Go To Declaration 的 validate 方法时,我看到以下函数:
vendor\laravel\framework\src\Illuminate\Foundation\Validation\ValidatesRequests.php:
public function validate(Request $request, array $rules, array $messages = array())
{
$validator = $this->getValidationFactory()->make($request->all(), $rules, $messages);
if ($validator->fails())
{
$this->throwValidationException($request, $validator);
}
}
为什么它一直显示默认错误消息?