Я использую laravel 5.7. У меня есть таблица пользователей со столбцом user_type, где
0 = default users
1 = Professionals
2 = Facilities
8 = Employees
9 = Managers
10 = Administrator
И еще один столбец с логическим значением is_premium, который возвращает либо истину, либо ложь.
Я создал промежуточное ПО для администратора
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');
}
}
И я использовал его в файле routes / web.php как
Route::group(['prefix' => 'administration', 'middleware' => 'admin'], function(){
Route::get('/dashboard', 'Admin\DashboardController@index')->name('admin.dashboard');
});
Когда я захожу на маршрут панели администратора, он говорит
ERR_TOO_MANY_REDIRECTS
Я знаю, что я что-то делаю не так ... что это?
И я предполагаю создать промежуточное ПО для других типов пользователей и использовать их в файле маршрутов. Это правильный способ?
user_type
, а в своем вопросе этоusertype
. - person adam   schedule 03.10.2018