Добавить мета в коллекцию с разбивкой на страницы - PullRequest
1 голос
/ 26 мая 2020

Не могли бы вы помочь мне с добавлением мета в разбитую на страницы коллекцию? Я получил ответ, у которого работает пагинация. Я могу поменять местами страницы? = 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"
      }
    }
  ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...