Php Laravel paginate资源赢得';不要添加元
我有以JSON格式返回的资源数据。当我尝试使用paginate获取数据时,它不包括元数据 基于我应该包含的数据,如:Php Laravel paginate资源赢得';不要添加元,php,laravel,Php,Laravel,我有以JSON格式返回的资源数据。当我尝试使用paginate获取数据时,它不包括元数据 基于我应该包含的数据,如: "meta":{ "current_page": 1, "from": 1, "last_page": 1, "path": "http://example.com/pagination", "per_page": 15, "to": 10, "total": 10 } 但我的数据是这样返回的: 代码 控制器 公共功能索
"meta":{
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "http://example.com/pagination",
"per_page": 15,
"to": 10,
"total": 10
}
但我的数据是这样返回的:
代码
控制器
公共功能索引()
{
$products=PRODUCTFRONTROURCE::集合(产品::orderby('id','desc')->带有(['photos','seo','tags','variations','variations.children','options','options.children','categories')->其中('active','yes')->分页(8));
返回响应()->json([
“数据”=>$products,
'消息'=>'已成功检索到产品。',
]);
}
有什么想法吗?您不需要使用
response()
。Laravel的资源类允许您以表达的方式轻松地将模型和模型集合转换为JSON
每个资源类都定义了一个toArray
方法,该方法返回在发送响应时应转换为JSON的属性数组
公共功能索引()
{
$data=Product::orderby('id','desc')
->使用(['photos','seo','tags','variations','variations.children','options','options.children','categories']))
->其中(‘活动’、‘是’)
->分页(8);
$products=ProductFrontResource::collection($data);
退回$products;
}
附加元数据
'消息'=>'已成功检索到产品。'
是的,你可以
公共功能待命($request)
{
返回[
“数据”=>$this->collection,
'消息'=>'已成功检索到产品。'
];
}
我认为您还必须使用分页功能:ProductFrontResource::collection(另一个查询->分页(8))->分页(8)@MubasharIqbal很抱歉没明白你的意思!请给我一个样品好吗?谢谢,它正在工作,但我认为你需要编辑return$product
至退货$products代码>如果要转换集合,该怎么办?根据文档,我可以覆盖toArray方法,对吗?但当我这样做时,它会给我一个错误:``未定义的属性:illumb\Pagination\LengthAwarePaginator::$id```