Laravel - Перенаправление, если подключено - PullRequest
0 голосов
/ 29 марта 2019

Я молодой французский разработчик, и я зашел в тупик по поводу перенаправлений под Laravel.

У меня есть пользовательские таблицы, а именно Клиент (пользователи) и Сотрудники (администратор), и я могу без проблем войти в систему с помощью формы входа, которая отправляет меня на 2 разные страницы:

 Connected as a client-> mon-compte,
 Logged in as an employe-> gestion-admin.

Однако, если я вошел в систему как клиент и изменил url mon-compte с помощью gestion-admin, у меня есть доступ к этой странице и наоборот ...

Итак, я установил охрану и промежуточное ПО под Laravel, которые, кажется, работают, но поочередно я скажу. В моем web.php у меня есть 2 группы:

Route::group([
'middleware' => 'App\Http\Middleware\Employe',
], function () {
    Route::get('/mon-compte', 'ControllerConnexion@accueilClient');
    Route::view('mon-compte', 'pages/mon-compte');
    Route::get('/gestion-admin', 'ControllerConnexion@redirectClient');
});

Route::group([
'middleware' => 'App\Http\Middleware\Client',
], function () {
    Route::get('/gestion-admin', 'ControllerConnexion@accueilEmploye');
    Route::view('gestion-admin', 'pages/gestion-admin');
    Route::get('/mon-compte', 'ControllerConnexion@redirectEmploye');

});

В этом порядке расположения групп используемый доступ блокируется, если я меняю url / gestion-admin на / mon-compte, если я подключаюсь как клиент, я попадаю прямо на страницу gestion-page. Если я изменяю URL и хочу перейти в mon-compte, он отправляет меня обратно в gestion-admin.

К минусам, если я переверну 2 группы позиций:

Route::group([
'middleware' => 'App\Http\Middleware\Client',
], function () {
    Route::get('/gestion-admin', 'ControllerConnexion@accueilEmploye');
    Route::view('gestion-admin', 'pages/gestion-admin');
    Route::get('/mon-compte', 'ControllerConnexion@redirectEmploye');

});

Route::group([
'middleware' => 'App\Http\Middleware\Employe',
], function () {
    Route::get('/mon-compte', 'ControllerConnexion@accueilClient');
    Route::view('mon-compte', 'pages/mon-compte');
    Route::get('/gestion-admin', 'ControllerConnexion@redirectClient');
});

У меня противоположный эффект ....

Я признаю, что у меня нет решения.

1 Ответ

0 голосов
/ 30 марта 2019

Подумайте 'if (auth () -> check)' должно быть 'if (! Auth () -> check)'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...