Мне нужно перенаправить на выход из системы, если у пользователя есть роль «учитель».Я пытался сделать это с промежуточным программным обеспечением, но я не знаю, в чем здесь проблема.Там написано:
Эта страница не работает. 127.0.0.1 перенаправляет вас слишком много раз.
, иногда Auth: user () имеет значение nullбез причины.
Промежуточное ПО:
public function handle($request, Closure $next)
{
if (Auth::user()->role == User::ROLE_TEACHER) {
return redirect()->route('logout');
}
return $next($request);
}
Ядро:
protected $routeMiddleware = [
.....
'noTeacher' => \App\Http\Middleware\RedirectIfTeacher::class,
];
HomeController:
$this->middleware('noTeacher', ['only' => 'index']);
Маршруты:
Route::post('login', 'Auth\LoginController@login');
Route::get('logout', 'Auth\LoginController@logout')->name('logout');
Route::group(['middleware' => ['auth']], function () {
...
});