Php 如何删除Laravel paginate响应的元对象中的链接?
Laravel DefaultPaginate给了我一个带有默认分页格式的响应,但是我想在页面响应中删除元对象中的链接 我使用以下代码获取页面数据:Php 如何删除Laravel paginate响应的元对象中的链接?,php,laravel,pagination,lumen,Php,Laravel,Pagination,Lumen,Laravel DefaultPaginate给了我一个带有默认分页格式的响应,但是我想在页面响应中删除元对象中的链接 我使用以下代码获取页面数据: public function index() { return response()->json( new EntityCollection(Entity::paginate($pageSize)) ); } 它返回我在代码中调用EntityCollection的资源集合中的响应。但是我想在回复时删除meta中的链接 E
public function index()
{
return response()->json(
new EntityCollection(Entity::paginate($pageSize))
);
}
它返回我在代码中调用EntityCollection的资源集合中的响应。但是我想在回复时删除meta中的链接
EntityCollection如下所示:
<?php
namespace App\Http\Resources;
use Illuminate\Http\Resources\Json\ResourceCollection;
class EntityCollection extends ResourceCollection
{
/**
* Transform the resource collection into an array.
*
* @param \Illuminate\Http\Request $request
* @return array
*/
public function toArray($request)
{
return [
'data' => $this->collection,
];
}
}
请告诉我如何删除meta中的链接,或者如何在Laravel中定制paginate的响应。这里的问题是
ResourceCollection
覆盖了您的自定义响应结构,并添加了一些额外的属性。您可以通过如下方式重写toResponse()
方法来修复此(损坏的IMO)行为:
/**
* {@inheritdoc}
*/
public function toResponse($request)
{
return JsonResource::toResponse($request);
}
检查这个
/**
* {@inheritdoc}
*/
public function toResponse($request)
{
return JsonResource::toResponse($request);
}