Не могли бы вы помочь мне с добавлением мета в разбитую на страницы коллекцию? Я получил ответ, у которого работает пагинация. Я могу поменять местами страницы? = 1 и так далее. Но когда я получил ответ, метатегов, которые мне нужны, нет. Спасибо. Вот мой провайдер ExtendCollectionServiceProvider:
public function boot()
{
Collection::macro('paginate', function ($perPage, $total = null, $page = null, $pageName = 'page', $queryParams= []) {
$page = $page ?: LengthAwarePaginator::resolveCurrentPage($pageName);
return new LengthAwarePaginator($this->forPage($page, $perPage), $total ?: $this->count(), $perPage, $page, [
'path' => 'articles',
'pageName' => $pageName,
'query' => $queryParams
]);
});
}
Вот мой контроллер:
public function index()
{
$collection = new ArticlesCollection(ArticleResource::collection(Article::with(['user', 'tags'])->paginate(3)));
return $collection;
}
И я получил такой ответ, разбивка на страницы работает. Я могу менять местами страницы, но мета нет. Не знаю, какая последняя ...
{
"data": [
{
"id": 1,
"user": {
"id": 1,
"full_name": "test test@gmail.com",
"email": "test@gmail.com"
},
"slug": "davonte-sawayn-1",
"name": "1",
"body": "Aliquam placeat veritatis alias sed et inventore. Animi animi amet recusandae qui voluptates quidem. Eos qui culpa aut molestias.",
"tags": [
{
"id": 6,
"name": "testTag"
},
{
"id": 1,
"name": "PHP"
},
{
"id": 2,
"name": "Laravel"
}
],
"time": {
"created_at": "2020-05-05T15:19:26.000000Z",
"updated_at": "2020-05-05T15:19:26.000000Z"
}
},
{
"id": 2,
"user": {
"id": 1,
"full_name": "test test@gmail.com",
"email": "test@gmail.com"
},
"slug": "lura-weimann-iii-1",
"name": "2",
"body": "Praesentium velit deserunt eaque quia consequatur dolor. Delectus nulla quasi in maiores. Et recusandae sed et magnam aperiam exercitationem dolor et.",
"tags": [
{
"id": 3,
"name": "Node"
},
{
"id": 2,
"name": "Laravel"
}
],
"time": {
"created_at": "2020-05-05T15:19:26.000000Z",
"updated_at": "2020-05-05T15:19:26.000000Z"
}
},
{
"id": 11,
"user": {
"id": 1,
"full_name": "test test@gmail.com",
"email": "test@gmail.com"
},
"slug": "raphaelle-hudson-jr-1",
"name": "3",
"body": "Maiores in ullam error odio accusantium rerum aliquam. Numquam explicabo fugiat facilis natus accusantium. Non et perferendis fugit in quas ipsum voluptate sit.",
"tags": [],
"time": {
"created_at": "2020-05-06T12:18:51.000000Z",
"updated_at": "2020-05-06T12:18:51.000000Z"
}
}
]
}