Laravel: нумерация страниц с лимитом и номером страницы на API - PullRequest
0 голосов
/ 09 мая 2018

У меня есть запрос, где я могу получить все данные из связанных таблиц и получить всего 10 rows. Теперь я хочу установить параметр пагинации в своем запросе.если мои pagenumber=1 и limit=2 возвращает 1 and 2 rows данные с page=1 и limit=2, если я отправляю page-3 и limit-2, возвращается 5 and 6 rows и page-3 .if page=null иlimit=null вернуть все данные.

Как я могу это сделать.

Моя функция:

Post::with(['product.categories.attributes'])->whereStatus("Active")->get();

Также, как я могу передать это в POSTMAN

1 Ответ

0 голосов
/ 09 мая 2018

Все, что вам нужно, это пропустить / взять

https://laravel.com/docs/5.6/queries#ordering-grouping-limit-and-offset

Ваш код будет выглядеть примерно так:

public function show(Request $request) {
    $perPage = $request->perpage;

    if ($request->page == "") {
        $skip = 0;
    else {
        $skip = $perPage * $request->page;
    }

    $result = Post::with(['product.categories.attributes'])
        ->skip($skip)
        ->take($perPage)
        ->where("Status", "Active")
        ->get();
}

Случай, когда $ _POST ['perpage'] не задан, можно изучить здесь:

Пропустить и взять все?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...