如何在laravel中将自定义错误包添加到deafault auth中?因为我在一个页面上有两个表单(登录和注册),如果用户出错,他应该在正确的输入下面看到错误,但两个表单都有相同的名称。
我不想集成供应商文件。
我知道如何解决这个问题,只需编辑:
vendor/laravel/framework/src/Illuminate/Foundation/Auth/AuthenticatesUsers.php
并添加错误包:
protected function sendFailedLoginResponse(Request $request)
{
return redirect()->back()
->withInput($request->only($this->username(), 'remember'))
->withErrors([
$this->username() => Lang::get('auth.failed'),
], 'login' <--);
}
但是如何在不编辑供应商文件的情况下这样做?
答案 0 :(得分:0)
这是因为您为两个表单返回的错误具有相同的名称。 @if ($errors->has('email'))
用于登录和注册。返回@if ($errors->has('email'))
的两个中的任何一个肯定会显示在另一个上。因为错误存储在会话中,has()
方法只检查会话是否存在并显示错误。