Задать вопрос
@00O

Как получить получить запись?

Добрый день. В приложении есть пользователи, роли и права. Мне необходимо проверить наличие права у пользователя, через его роли.

Пользователь с ролями связан как многие-ко-многим, в свою очередь роли с правами тоже связаны как многие-ко-многим. Как быть?
  • Вопрос задан
  • 132 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Skillbox
    PHP-фреймворк Laravel
    2 месяца
    Далее
  • Яндекс Практикум
    Фулстек-разработчик расширенный
    20 месяцев
    Далее
Решения вопроса 2
New_Horizons
@New_Horizons
Бред:
Как быть?

Читать документацию конечно же)
https://laravel.com/docs/8.x/eloquent-relationships
Ответ написан
@jazzus
Добавить в метод проверки модели User
return $this->roles()
    ->whereHas('perms', function ($query) use ($permId) {
        $query->where('id', $permId);
    })->exists();

или добавить к ролям правила через with и в цикле проверять через contains
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы