[英]Laravel change main page after login
登錄用戶后,我想顯示其他主頁。
Route::get('/', 'PagesController@getIndex');
Route::group(['middleware' => 'auth'], function () {
Route::get('/', 'BlogController@getUserBlog');
});
當用戶登錄時,我想顯示BlogController@getUserBlog
正常工作,但是當用戶未通過身份驗證時,laravel顯示/login
頁面而不是PagesController@getIndex
。 如何針對以下問題進行更正:
驗證用戶: BlogController@getUserBlog
訪客: PagesController@getIndex
在此中間件RedirectIfAuthenticated
更改
public function handle($request, Closure $next, $guard = null)
{
if (Auth::guard($guard)->check()) {
//Logged In
return redirect()->route('getUserBlog');
}
// Not Logged In
return redirect()->route('getIndex');
}
並在您的routes
文件中進行必要的更改
Route::get('/', 'PagesController@getIndex')->name('getIndex');
Route::get('/', 'BlogController@getUserBlog')->name('getUserBlog');
或者,您也可以不使用中間件:
Route::group(['prefix' => '/'], function()
{
if ( Auth::check() )
{
Route::get('/', 'BlogController@getUserBlog');
} else{
Route::get('/', 'PagesController@getIndex');
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.