Я использую Laravel 5.7.У меня есть таблица пользователей с столбцом user_type, где
0 = default users
1 = Professionals
2 = Facilities
8 = Employees
9 = Managers
10 = Administrator
И еще один столбец, который является логическим is_premium, который возвращает либо true, либо false.
Я создал промежуточное ПО для admin
namespace App\Http\Middleware;
use Closure;
use Auth;
class IsAdmin
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
if (Auth::user() && Auth::user()->usertype == 10) {
return $next($request);
}
return redirect('/administration/dashboard');
}
}
И я использовал его в файле route / web.php как
Route::group(['prefix' => 'administration', 'middleware' => 'admin'], function(){
Route::get('/dashboard', 'Admin\DashboardController@index')->name('admin.dashboard');
});
Когда я захожу на маршрут панели администратора, он говорит:
ERR_TOO_MANY_REDIRECTS
Я знаю, что естьчто-то я делаю неправильно ... что это?
И я предполагаю создать промежуточное ПО для других типов пользователей и использовать его в файле маршрутов.Это правильный способ сделать?