Выберите поля в Laravel Eloquent с отношением - PullRequest
0 голосов
/ 28 сентября 2018

Как я могу выбрать поля в красноречивом объекте laravel, что я имею в виду

User::select('username', 'firstname', 'lastname')->with(['periods' => function($){
   $->select('jobtitle')->orderBy('start_date', 'desc')->limit(1);
}])->paginate(50);

, в случае, если в этом запросе я получаю точки null

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Вы должны использовать:

User::select('username', 'firstname', 'lastname')->with(['periods' => function($){
   $->select('jobtitle', 'user_id')->orderBy('start_date', 'desc')->limit(1);
}])->paginate(50);

вместо.Я добавил user_id, потому что, вероятно, это столбец, который объединяет периоды с пользователями.Eloquent не может назначить пользователям допустимые периоды, если вы не выбрали столбец, используемый для «сопоставления» этих записей

0 голосов
/ 28 сентября 2018

Вы можете решить следующий метод в laravel 5.5 и более новой версии.

User::select('username', 'firstname', 'lastname')->with('periods:jobtitle');
}])->get();
...