私は働く機能を持っていますが、コンサルタントごとに返される治療の数を制限したいと思います。Laravel eager load function limit
実施例:
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
関数、返さ治療の合計数に限り。
私が望むのは、各コンサルタントの治療を合計ではなく、 に制限することです。
どうすればいいですか?
との積極的なロードをCollection::mapのようなものを使用してPHPで切り捨てるか、交換 'treatments'は右、治療法のコレクションを返す必要がありますどちらか?それでは、最初の3つだけを取得したいと思っています。だから問題は何ですか? ' - > take(3)'はそれを正確に行います。 – Frondor
http://stackoverflow.com/questions/33607088/laravel-5-eager-loading-with-limit – sumit