@jazzus

Как убрать поля из Laravel Resource связанных отношений?

Пока разбираюсь что такое серверный рендеринг, хотел узнать - как можно скрывать поля у моделей в отношениях если использую json от Laravel? Т.е. формирую json через Laravel Resource и там можно указывать все поля таблицы. Но если мне во Vue нужно получить данные из связанных моделей типа {{user.group.category.name}} то в контроллере Laravel мне нужно сделать запрос типа $users->with('group.category');( и если для $user в файле UserResource я могу указать только нужные мне поля типа user.name или user.lastname (и все остальные будут за кадром) то для связанных моделей laravel генерирует json со всеми полями. Есть возможность также задать только нужные поля для таких отношений?
  • Вопрос задан
  • 408 просмотров
Решения вопроса 2
@Kostik_1993
Web Developer
Делай ресурс для реляции внутри основного ресурса
Ответ написан
Комментировать
@jazzus Автор вопроса
Еще один вариант к варианту Kostik_1993 - это указывать в модели запрещенные к показу свойства protected $hidden. Пример:
protected $hidden = [
         'updated_at', 'created_at', 'id'];

Что скроет из всех json запросов указанные 3 свойства
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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