我正在实现Laravel 5.8的 Eloquent API Resources
我遵循了文档中的所有说明:
这就是我得到的:
app / Http / Resources / TestResource.php
class TestResource extends JsonResource
{
/**
* Transform the resource into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
"id" => $this->id,
"title"=> $this->title
];
}
}
输出:
{
"id": 1,
"title": "Test Title"
}
我希望其格式如下:
{
"data": [{
"id": 1,
"title": "Test Title"
}]
}
有什么方法可以实现所需的输出?
答案 0 :(得分:1)
您应该使用键data
将资源作为数组的一部分返回。这样,您将获得一个资源位于该键下的对象。
在您的控制器中:
return [
'data' => new TestResource($data)
];