やろうとしていることを達成する方法の1つは、次のとおりです。
Deal:where('status', 'active')
->get()
->groupBy('type')
->map(function($deal) {
return $deal->take(3);
});
もちろん、クエリがnull
を返すかどうかを確認する必要があります またはempty
オブジェクトであり、クエリはすべてのアクティブを返すことに注意してください Deal
(s)(フィルタリングはCollection
で行われます )これは、Deal
がたくさんある場合は非効率的かもしれません (s)