Я использую Laravel 5.3 и Auth по умолчанию с this roles package. Как я могу выполнить обычное перенаправление пользователей после логин пользователя если у меня есть аналогичные роли, а также страницы для них. Например, у меня есть AdminRole и после Войти Я хочу перенаправить пользователя на /admin/dashboard
.Перенаправление пользователя на определенную страницу
Я пытался что-то подобное в LoginController
, но это не имеет смысла:
protected function redirectTo()
{
if (Auth::user()->isRole('admin'))
return redirect()->route('admin');
return redirect()->route('home');
}
Или, может быть, есть лучший способ использовать middleware
для перенаправления?
Вот мои маршруты (web.php
):
Route::get('/', function() {
return view('welcome');
});
Auth::routes();
Route::get('/home', '[email protected]');
Route::resource('company', 'CompanyController');
Route::group(['prefix' => 'admin'], function() {
Route::get('login', function() {
return view('admin.pages.admin-login');
});
Route::group(['middleware' => 'role:admin'], function() {
Route::get('/', function() {
return view('admin.admin-main');
});
});
});
показать маршрут часть –
где находится ваш пост Логин, вы можете установить маршрут postlogin в RedirectTo() –
@KrisRoofe 'Auth :: routes();' Это все маршруты для входа, регистрации и т. Д. – pwnz22