В модели user
// отношение
public function roles()
{
return $this->belongsToMany('App\Models\Role', 'user_role');
}
// проверка
public function hasRole($id)
{
return $this->roles()
->where('roles.id', $id)
->exists();
}
// для наглядности
public function isAdmin()
{
return $this->hasRole(Role::ID__ADMIN);
}
В модели Role
// 1 это ид роли
const ID__ADMIN = 1;
Проверять так
if ($user->isAdmin()) {
// code...
}
Но так проверять не надо. Т.к. придется Auth::check() чекать и условия прав доступа могут постоянно меняться. И по всему приложению нужно будет переписывать. Поэтому лучше сразу повникать в
политики и пермишины для ролей.