Метод simplePaginate
Метод simplePaginate применяется к запросу Eloquent
или Query Builder и возвращает экземпляр класса Paginator,
содержащий результаты текущей страницы. В отличие от метода
paginate, этот метод не показывает общее количество
записей и номера страниц, а только кнопки "Предыдущая"
и "Следующая". Первым параметром передаётся количество
записей на странице, вторым - имя параметра страницы
(по умолчанию 'page').
Синтаксис
<?php
Model::simplePaginate($perPage, $pageName);
?>
Пример
Давайте выведем статьи по 5 штук на страницу с простой пагинацией:
<?php
use AppModelsArticle;
$articles = Article::simplePaginate(5);
foreach ($articles as $article) {
echo $article->title;
}
?>
Результат выполнения кода:
"article 1"
"article 2"
"article 3"
"article 4"
"article 5"
Пример
Давайте используем простую пагинацию с кастомным именем параметра страницы:
<?php
use AppModelsArticle;
$articles = Article::simplePaginate(10, 'p');
foreach ($articles as $article) {
echo $article->title;
}
?>
Результат выполнения кода:
"article 1"
"article 2"
"article 3"
"article 4"
"article 5"
"article 6"
"article 7"
"article 8"
"article 9"
"article 10"
Пример
Давайте используем простую пагинацию в контроллере и передадим результаты в представление:
<?php
namespace AppHttpControllers;
use AppModelsArticle;
use IlluminateHttpRequest;
class ArticleController extends Controller
{
public function index()
{
$articles = Article::simplePaginate(5);
return view('articles.index', ['articles' => $articles]);
}
}
?>
Пример
Давайте выведем ссылки пагинации в Blade-шаблоне:
@foreach ($articles as $article)
<h2>{{ $article->title }}</h2>
<p>{{ $article->text }}</p>
@endforeach
{{ $articles->links() }}
Смотрите также
-
метод
paginate,
который возвращает полную пагинацию с номерами страниц -
метод
cursorPaginate,
который использует курсорную пагинацию для больших наборов данных -
класс
Paginator,
который представляет результаты простой пагинации -
метод
links,
который генерирует HTML-ссылки для пагинации