मुझे लगता है कि इस उत्तर को पोस्ट करने से पहले मुझे और प्रश्न पूछने चाहिए, लेकिन मुझे लगता है कि आप चीजों को गलत क्रम में कर रहे हैं।
public function rentals($id)
{
// Retrieve all rentals within a region and the locations spatial data
$rentals = DB::table('rentals')
->join('regions', 'rentals.region_id', '=', 'regions.id')
->join('rental_locations', 'rentals.rental_location_id', '=', 'rental_locations.id')
->select('*')
->where('rentals.region_id', '=', $id)
->groupBy('rental_location_id')
->get();
return collect($rentals); // or return $rentals
/* Not necessary
// Create a collection from the array of query results
$rentals = collect($rentals);
// Laravel is set up to return collections as json when directly returned
return $rentals;
*/
}
तो आपको अपने समूह को क्वेरी में ही जोड़ना होगा क्योंकि यह एक क्वेरी क्रिया है जो आपके SQL को करनी चाहिए। दूसरा हिस्सा यह है कि जब आप इसे एक संग्रह में परिवर्तित करते हैं (जो कि 100% आवश्यक नहीं है) तो आप इसे वापस कर सकते हैं। Laravel JSON को मूल रूप से हैंडल करता है।