<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\ResourceCollection;
class LanguageCollection extends ResourceCollection
{
public $collects = LanguageResource::class;
/**
* TagCollection constructor.
* @param $resource
*/
public function __construct($resource)
{
parent::__construct($resource);
}
/**
* Transform the resource collection into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'languages' => parent::toArray($request)
];
}
}
This would give a response structure as follows:
But I want to put all the languages with in another wrapper called "result" so the response structure will look like this:
I don't want to hard code it this way cause this would require us to change every resource collecction.
public function toArray($request)
{
return [
'result' => ['languages' => parent::toArray($request)]
];
}
What is the correct way to achieve this response structure?