Выбирайте столбцы с помощью findMany и сохраняйте отношения в Eloquent Laravel - PullRequest
0 голосов
/ 30 августа 2018

Я пытаюсь получить сообщения и авторов. Однако мне нужен только заголовок поста и информация об авторе.

Это запрос, который я выполняю:

// I want post titles with IDs of 1, 2, 3, 4 and 5 and the author of each one
Post::with('author')->findMany([1, 2, 3, 4 , 5], ['post_title');

Полученная коллекция имеет штраф post_title, но отношение автора равно null .

Однако, если я бегу:

Post::findMany([1, 2, 3, 4, 5])->with('author');

Я могу получить доступ к автору в $post->author->first_name.

Я не понимаю, почему связь теряется, если я указываю, какие столбцы мне нужны.

Итак, как запросить таблицу публикаций, указав, какие столбцы я бы хотел выбрать, а также сохранить связь с авторами?

1 Ответ

0 голосов
/ 30 августа 2018

Вы должны выбрать Post id, потому что при использовании метода with это означает, что вы используете Laravel Eager Loading, Eager Load нужно Post id для загрузки author

Post::with('author')->findMany([1, 2, 3, 4 , 5], ['id','post_title');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...