Един от начините, по които можете да постигнете това, което се опитвате да направите, е:
Deal:where('status', 'active')
->get()
->groupBy('type')
->map(function($deal) {
return $deal->take(3);
});
Разбира се, трябва да проверите дали заявката връща null
или empty
обекти и имайте предвид, че заявката връща всички активни Deal
(s) (филтрирането се извършва в Collection
), което може да е неефективно, ако има много Deal
(s)