У меня есть рабочая функция, однако я бы хотел ограничить количество обработок на каждого консультанта, которые возвращаются.Ограниченная функция загрузки Laravel
Рабочий пример:
Clinic::where('user_id', Auth::id())
->with('consultants.specialism', 'consultants.treatments')
->first();
Предлагаемая (но не работает) пример:
Clinic::where('user_id', Auth::id())
->with('consultants.specialism')
->with(['consultants.treatments' => function ($query) {
$query->take(3);
}])
->first();
К сожалению, take
или limit
функции, ограничивает его общего количества обработок возвращенного ,
Я хотел бы ограничить обработку каждого консультанта до максимум 3, а не всего.
Как я могу достичь этого, пожалуйста?
'treatments' должен возвращать коллекцию процедур, верно? Тогда вы хотите получить только первые 3 ... Так в чем проблема? '-> take (3)' делает именно это. – Frondor
http://stackoverflow.com/questions/33607088/laravel-5-eager-loading-with-limit – sumit