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
: Функция, вызываемая при изменении количества записей на страницу