Използване
В други рамки пагинацията може да бъде голям проблем. Laravel прави този процес безболезнен. Самата рамка може да генерира набор от връзки спрямо текущата страница. Генерираното маркиране е съвместимо с рамката Twitter Bootstrap.
Използване
Има няколко начина за разделяне на данни на страници. Най-простият е използването на метода на страницата на обекта за създаване на заявки или във връзка с моделите на Eloquent.
Страниране на селекция от базата данни
Забележка: Ако използвате groupBy в заявка, тогава вградената пагинация на Laravel няма да работи ефективно. В този случай трябва ръчно да създадете пагинатор.
Ръчно създаване на пагинатор
Понякога има нужда да създадете пагинатор ръчно, като му подадете масив от елементи. Можете да направите това, като създадете обект Illuminate\Pagination\Paginator или Illuminate\Pagination\LengthAwarePaginator, в зависимост от задачата.
Пейджинг красноречиви модели
Аргументът, предаден на метода paginate, е броят редове, които искате да видите на една страница. Блокът за страниране в шаблона се изобразява чрез метода за изобразяване:
Това е всичко, което е необходимо за създаване на пагинация! Обърнете внимание, че не е необходимо да уведомяваме рамката за текущия номер на страница - Laravel ще го разбере сам. Номерът на страницата се добавя към URL адреса като параметър на заявката: ?page=N .
Можете да получите информация за текущата позиция, като използвате следните методи:
„Опростена пагинация“
Ако трябва да покажете само връзките „Следваща страница“ и „Предишна страница“, тогава можете да използвате метода simplePaginate. В този случай заявката в базата данни ще бъде по-проста. Това е полезно при много големи количества данни и там, където потребителят се нуждае първоняколко страници и няма нужда да навлизате в самата дълбочина.
Задаване на URL адреса за показване на връзки
Примерът по-горе ще създаде връзки като тази: http://example.com/custom/url?page=2
За да добавите хеш параметър ("#xyz") към URL адреса, използвайте метода на фрагмента:
JSON конвертиране
Класът Paginator имплементира (имплементира) Illuminate\Contracts\Support\JsonableInterface, следователно има метод toJson, който се използва за извеждане на странирана информация във формат json. В допълнение към пагинираните данни, които се намират в data, този метод добавя мета информация, а именно: total, current_page и last_page.