Вы можете сделать что-то настолько простое, как добавление функции isSuperAdmin в модель User.После входа в систему вы просто вызываете эту функцию у пользователя всякий раз, когда вам нужно проверить.
В модели User.php
public function isSuperAdmin()
{
return $this->user_role == 1;
}
Тогда вы также можетесоздайте промежуточное ПО, использующее эту функцию.
php artisan make:middleware SuperAdmin
В функции дескриптора этого промежуточного ПО ( app / http / middleware / SuperAdmin.php ):
public function handle($request, Closure $next)
{
if (Auth::check() && Auth::user()->isSuperAdmin()) {
return $next($request);
}
return redirect('some-route-for-unauthorized-users');
}
Затем в ваших маршрутах (возможно, web.php) вы можете использовать это промежуточное ПО для защиты маршрутов:
Route::group(['middleware' => ['auth', 'superadmin']], function () {
... put protected routes here ...
});