是否更改Laravel 8凭据匹配验证的错误密钥?
在LoginController中更改后:是否更改Laravel 8凭据匹配验证的错误密钥?,laravel,error-handling,laravel-8,Laravel,Error Handling,Laravel 8,在LoginController中更改后: /** * Get the needed authorization credentials from the request. * * @param \Illuminate\Http\Request $request * @return array */ protected function credentials(\Illuminate\Http\Request $request)
/**
* Get the needed authorization credentials from the request.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
protected function credentials(\Illuminate\Http\Request $request)
{
return [
'email' => $request->input('login_email'),
'password' => $request->input('login_password'),
];
}
我能够获得“登录电子邮件”作为用户尝试登录而不填写电子邮件输入的关键
"login_email" => array:1 [▼
0 => "The login email field is required."
]
但当凭据不匹配时,错误键为“email”,我希望它也是“login\u email”:
要更改匹配的凭据错误密钥,我需要做什么
我在
resources/lang/en/auth.php
文件中看到了“这些凭证与我们的记录不匹配”的密钥。是否“失败”有没有办法将“电子邮件”密钥重命名为“失败”?这是正常行为
第一个是检查$request,其中'login\u email'
是表单字段,第二个是$db\u result
,其中“email”
是表中的字段
一种解决方法是将
'login\u email'
重命名为email
,我所要做的就是覆盖LoginController中的此函数。不,一切都是我想要的:
protected function sendFailedLoginResponse(\Illuminate\Http\Request $request)
{
throw ValidationException::withMessages([
'login_email' => [trans('auth.failed')],
])->redirectTo('/');
}
我需要它是“登录电子邮件”,有办法改变它吗?因为我想在同一页的两个表单中使用“登录emai”和“注册email”。
protected function sendFailedLoginResponse(\Illuminate\Http\Request $request)
{
throw ValidationException::withMessages([
'login_email' => [trans('auth.failed')],
])->redirectTo('/');
}