Как получить все записи, кроме первых 5 записей после сортировки по определенному столбцу - PullRequest
0 голосов
/ 29 сентября 2018

У меня 18 записей, отсортированных по конкретному столбцу.

сначала должны отображаться первые 5 записей, а при нажатии на конкретную кнопку должны отображаться другие записи.

как я могу это сделать?Я должен использовать JavaScript?
это мой запрос ...

public function theMostImportant()
{
    // return  CategoryActivity::all()->sortByDesc("priority")->take(5);
    return  CategoryActivity::all()->sortByDesc("priority");
}

, на мой взгляд, мой код выглядит так:

@foreach($priorityProjectCategory as $importantCategory)

    {{--{{dd($importantCategory)}}--}}

    <li><a href="#" data-filter=".{{str_replace(' ','',$importantCategory['faName'])}}"
        class="current">{{$importantCategory['faName']}}
        <sup></sup>
    </a></li>
@endforeach

Ответы [ 3 ]

0 голосов
/ 29 сентября 2018

чтобы пропустить количество строк в результате, вы можете использовать функцию skip() вместе с функцией take() в 'Eloquent Query Builder.затем вызовите get(), чтобы получить результат.

skip(n) // n = number of rows to be skipped

take(m) // m = number of rows need to be take after the skip

в этом случае 'm = количество всех строк - n'

Возможное решение

return  CategoryActivity::sortByDesc("priority")->skip(5)->take(
    CategoryActivity::sortByDesc("priority")->count() - 5
)->get();
0 голосов
/ 29 сентября 2018

Кажется, вам в основном нужно показать больше функциональности с разбивкой на страницы.

Вы можете загрузить первые пять записей при первой загрузке страницы, используя -> take (5), и вы можете показать их в своем файле блэйда вида.

Тогда будет полезно использовать JS для асинхронной загрузки других записей с помощью запроса ajax по нажатию кнопки.

В запросе ajax вы можете установить предел следующих записей.И можете пропустить первые пять, используя -> skip (5)

0 голосов
/ 29 сентября 2018

вы можете рассмотреть возможность нумерации страниц по умолчанию Laravel. см. Здесь

или вы можете создать маршрут наподобие / category? Page = 3, который принимает страницу как запрос URL и выполняет;

$page = $request->query['page'];
$pageSize = 5;
$categories = CategoryActivity::all()->sortByDesc("priority")->offset($pageSize*($page-1))->limit($pageSize);

Я рекомендуюхотя pagintaion.

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