laravel 5 auth系统:更改重定向路径和自定义错误消息

时间:2016-06-19 07:10:45

标签: php laravel laravel-5

我已经在我的项目中实施了laravel 5 auth系统,但我希望对其进行一些更改

自定义错误消息

1.现在auth系统只显示一条错误消息(即这些信用额度与我们的记录不匹配),但我需要基于失败的登录参数的不同错误消息(即如果email无效则显示无效电子邮件或如果用户帐户被禁用,则显示帐户已被阻止

重定向路径

考虑到用户已登录并且他正在尝试再次访问login视图auth系统重定向到默认路由(即\),但我需要将此路由更改为用户个人资料(即index/dashboard

我不知道如何编辑默认的auth系统,它使用特征实现,遗憾的是我没有足够的特性知识:(

1 个答案:

答案 0 :(得分:3)

请务必阅读Authenticating Docs。 您可以在app / Auth / AuthController中更改重定向路径。只需使用

设置路径即可
protected $redirectTo = '/home';

如果用户已经过身份验证并且他转到/login/register路径,您可以在RedirectIfAuthenticated Middleware

中设置重定向路径

只需将return redirect('/');更改为您的路径,例如return redirect('/dashboard');

覆盖Auth Trait

如果要覆盖任何Auth方法,只需查看特征即可。例如:

如果要更改登录方法的视图路径,请查看AuthenticatesUsers trait。这里有showLoginForm Method。要覆盖此特征,只需将此方法添加到app/Auth/Authcontroller并更改视图路径。 e.g

应用/认证/ AuthController

 ....
 ....

/**
 * Override the default trait Method with our own
 */
public function showLoginForm()
{
    $view = property_exists($this, 'loginView')
                ? $this->loginView : 'auth.authenticate';
    if (view()->exists($view)) {
        return view($view);
    }
    return view('myown.path.login'); // Change the View Path
}

您可以在/vendor/laravel/framework/src/Illuminate/Foundation/Auth

中找到验证特征

自定义错误消息

要制作您自己的自定义错误消息或更改当前错误消息,您应该查看此Question on Stackoverflow