2016-08-31 2 views
0

Почему моя перенаправляемость не работает? Я использую собственную авторизацию Laravel и изменил оба пути: LoginController.php и RedirectIfAuthenticated.php, но не повезло.Laravel перенаправляет, если аутентифицировано

Вот мои маршруты:

Auth::routes(); 

Route::get('/', '[email protected]'); 
Route::get('/home', '[email protected]'); 


Route::group(['prefix' => 'admin'], function() { 

    Route::get('/', function() { 
     return view('admin_temp'); 
    }); 

    Route::resource('users', 'WPUserController'); 

}); 

ответ

1

Если вы имеете в виду вы хотите перенаправить пользователя после входа в систему, вы можете изменить $redirectTo переменную в Auth\AuthController.php:

/** 
* Where to redirect users after login/registration. 
* 
* @var string 
*/ 
protected $redirectTo = '/'; 

Если вы хотите, чтобы перенаправлять все прошедшие проверку подлинности пользователей на какой-то URL-адрес - это ужасная идея, потому что ваше приложение не будет работать (пользователи будут перенаправлены на один и тот же URL-адрес с каждым reuqest). Возможно, вы хотите перенаправить пользователей, не прошедших проверку подлинности, на страницу входа или что-то еще?

Кроме того, вы можете переопределить handleUserWasAuthenticated() в Auth\AuthController.php методы (Laravel 5.2) или sendLoginResponse() в Auth\LoginController.php методы (Laravel 5.3). Скопируйте и вставьте его и изменить return положение на что-то вроде этого:

return redirect()->route('my.route'); 
+0

Я хотел перенаправить после входа в систему ... так что если учетные данные пользователя прав, взять его в «/ администратора». Я изменил $ redirectTo на '/ admin', но он переводит меня в '/' – Norgul

+0

Да, это багги. Документация говорит об изменении '$ redirectTo'. Вы можете попробовать добавить эту переменную: 'protected $ redirectPath = '/ admin';' –

+0

Черт, нет, все равно ... думаю, мне придется придумать какое-нибудь готовое решение – Norgul

Смежные вопросы