есть модель Roles. Many to Many отношения.
Для модели User я сделал метод isAdmin(), который определяет есть ли среди ролей пользователя, роль 'admin'.
В общем, при передаче на фронт приходилось бы каждый раз в коллекцию User'а вставлять метод isAdmin ($user['isAdmin' = $user->isAdmin(), типо того).
Для того, чтобы каждый раз так не делать я создал UserObserver, где при создании Юзера вставляю в его коллекцию этот метод isAdmin.
Проблема начинается тогда, когда я начинаю обновлять данные о пользователе. Выдается ошибка, что столбец isAdmin не найден в таблице users( Да, такого столбца нет ).
Как с этим бороться? Какие есть альтернативные решения?
Нашел решение. Никакие обсерверы в моем случае не нужны. Для того, чтобы добавить кастомный метод в коллекцию модели, нужно определить protected $appends = []
Фронт по апи?
Inertia
В итоге апи. Тогда стоит обернуть в ресур и в ресурсе добавить такое поле
Обсуждают сегодня