laravel показать только следующую и предыдущую ссылку в нумерации страниц

Я пытаюсь использовать Laravel Pagination, и я хочу показать только предыдущую и следующую ссылку без номера 1 2 3 …

как я мог это сделать? Я следовал за страницей Laravel:
«Простая нумерация страниц»

Если в представлении разбиения на страницы отображаются только ссылки «Далее» и «Предыдущие», у вас есть возможность использовать метод simplePaginate для выполнения более эффективного запроса. Это полезно для больших наборов данных, когда вам не требуется отображение точных номеров страниц на вашем представлении:

$someUsers = User::where('votes', '>', 100)->simplePaginate(15);

но это все еще показывает номер страницы, когда я делаю это на мой взгляд:

<?php echo $someUsers->links(); ?>

может кто-нибудь помочь

Спасибо

4

Решение

tldr; ты хочешь использовать simplePaginate() метод по запросу А ТАКЖЕ links('some.view') на paginator (в представлении), чтобы добиться того, что вы просите.

Вот что вам нужно, чтобы показать выбранные ссылки в данном шаблоне:

// inline choose simple links (prev, next)
{{ $someUsers->links('pagination::simple') }}

// inline choose slider links
{{ $someUsers->links('pagination::slider') }}

// inline choose slider-3 (default)
{{ $someUsers->links('pagination::slider-3') }}

Это шаблоны фреймворка, размещенные в каталоге laravels: Illuminate/Pagination/views/

Вы всегда можете решить использовать свои собственные шаблоны, для этого просто позвоните:

// assuming you have it in app/views/pagination/my-links.blade.php
{{ $someUsers->links('pagination.my-links') }}

// or using views namespace (you need to define it first)
{{ $someUsers->links('myNamespace::my-links') }}

Конечно, вы можете определить ваши ссылки по умолчанию в app/config/view.php:

// instead of
'pagination' => 'pagination::slider-3',

// something like
'pagination' => 'pagination.my-links',
15

Другие решения

Вам необходимо использовать:

$someUsers = User::where('votes', '>', 100)->simplePaginate(15);

как вы использовали

И в app/config/view.php вам нужно установить pagination в pagination::simple (по умолчанию установлено pagination::slider-3). Тогда у вас будет по умолчанию нумерация страниц, как на картинке:

Простая нумерация страниц в Laravel

Вы также можете установить пользовательский текст для предыдущего и следующего файла редактирования элементов lang/en/pagination.php (для другого языка, конечно, вам нужно изменить его в другом каталоге lang). По умолчанию установлено:

'previous' => '&laquo; Previous',

'next'     => 'Next &raquo;',

но вы можете изменить его на:

'previous' => '&laquo;',

'next'     => '&raquo;',

и тогда это будет выглядеть как на картинке:

Простая нумерация страниц в Laravel - только стрелки

5

Увидеть самое дно эта страница руководства чтобы увидеть, как реализовать пользовательский вид для нумерации страниц. Подводя итог, вам нужно выполнить следующие шаги:

  1. Создать представление для paginator где-то в app/views,
  2. Заменить pagination вариант в app/config/views.php с путем, который Laravel будет использовать, чтобы найти ваш новый вид.
  3. Отобразите свой пользовательский вид разбивки на страницы следующим образом:

    <?php echo with(new ZurbPresenter($paginator))->render(); ?>
    

куда ZurbPresenter имя класса вашего ведущего

2

В config/view.php:

/*
|--------------------------------------------------------------------------
| Pagination View
|--------------------------------------------------------------------------
|
| This view will be used to render the pagination link output, and can
| be easily customized here to show any view you like. A clean view
| compatible with Twitter's Bootstrap is given to you by default.
|
*/

'pagination' => 'pagination::slider-3',

Установите это в simple,

Источник: http://youtu.be/lIEcyOUcNQk?t=8m00s

1
По вопросам рекламы [email protected]