Laravel 5.2 Auth路由

时间:2016-03-09 21:02:41

标签: php laravel laravel-routing laravel-5.2

我遇到了laravel路由问题。

我想要这样的路线:

/  - home page for unauthenticated users
/login  - login page
/register  - register page
/dashboard  - home page for authenticated users

登录后我希望用户被重定向到/ dashboard,如果经过身份验证的用户转到/或任何其他不受保护的路由,我还想将他重定向到/ dashboard。

我的routes.php。

`Route::get('/', 'HomeController@index');
 Route::group(['middleware' => 'web'], function () {


    Route::auth();

    Route::get(‘/dashboard’, ‘DashboardController@index');
    Route::get('/logout', 'Auth\AuthController@logout');


});`

这样可行,但是如果经过身份验证的用户转到/或任何其他未受保护的路由,我想将其重定向到/ dashboard。我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:1)

取自Laravel docs。

路径自定义

当用户成功通过身份验证后,他们将被重定向到/ URI。您可以通过在AuthController上定义redirectTo属性来自定义验证后重定向位置:

protected $redirectTo = '/home';

如果用户未成功通过身份验证,系统会自动将其重定向回登录表单位置。

在此处查看更多信息。 https://laravel.com/docs/5.2/authentication#included-routing

答案 1 :(得分:1)

你需要设置::

protected $ redirectTo =' / home'

在AuthController中的

将覆盖AuthController使用的Trait中的$ redirectTo变量。

你也可以用同样的方式改变redirectAfterLogout url。

!!快乐的编码。

答案 2 :(得分:0)

HomeController@index方法中,请检查并将Auth用户重定向到信息中心。 Auth::check() ? return redirect()->url('/dashboard') : '';