zertex/yii2-gridview-pagesize-widget

Widget for enabling dynamic page size selection on GridView

1.0.2 2017-12-18 17:17 UTC

This package is not auto-updated.

Last update: 2024-11-10 05:45:56 UTC


README

GridPageSize расширение для Yii2

Позволяет отображать список количества отображаемых записей и менять его в GridView на странице

Установка

Желательно устанавливать через composer.

Запуск в консоли

composer require --prefer-dist zertex/yii2-gridview-pagesize-widget "*"

можно также добавить строку в composer.json в секцию required

"zertex/yii2-gridview-pagesize-widget": "*"

Использование

Вставьте виджет надо или под GridView в представлении:

<?php echo \zertex\gridpagesize\GridPageSize::widget(); ?>

и установите filterSelector параметр в GridView как в примере.

<?= GridView::widget([
     'dataProvider' => $dataProvider,
     'filterModel' => $searchModel,
     'filterSelector' => 'select[name="per-page"]',
     'columns' => [
         ...
     ],
 ]); ?>

Callback функция

<?php echo \zertex\gridpagesize\GridPageSize::widget([
    'callback' => function($pageSize = 0) {
        ...
        echo $pageSize;
        ...
    }
]); ?>

Конфигурация

Доступны следующие парамтры конфигурации виджета.

  • label: Текст
  • defaultPageSize: Количество записей на страницу по умолчанию
  • pageSizeParam: Параметр запроса GET, содержащий значение количества записей на страницу
  • sizes: Массив чисел, отображаемых в списке выбора количества записей
  • template: Шаблон отображения элементов виджета. По умолчанию '{label} {list}'
  • options: HTML атрибуты элемента <select>
  • labelOptions: HTML атрибуты элемента <label>
  • encodeLabel: Кодировать текст
  • callback: Функция, вызываемая при изменении количества записей на страницу