PageSize widget is an extension to the Yii2 GridView that enables changing the size of a page on GridView.
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist nterms/yii2-pagesize-widget "*"
or add
"nterms/yii2-pagesize-widget": "*"
to the require section of your composer.json file.
To use this widget with a GridView, add this widget to the view where the GridView is:
<?php echo \nterms\pagesize\PageSize::widget(); ?>and set the filterSelector property of GridView as shown in
following example.
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'filterSelector' => 'select[name="per-page"]',
'columns' => [
...
],
]); ?>Please note that per-page here is the string you use for pageSizeParam setting of the PageSize widget.
Following properties are available for customizing the widget.
label: Text for the lbeldefaultPageSize: This value will be used if there's no page size selectedpageSizeParam: The name of the page size parameter used for the pagination widget in your grid viewsizes: An array of key values to be used as page sizes. Both kay and value should be integerstemplate: A template string to be used for rendering the elements. Default is'{list} {label}'options: HTML attributes for the<select>elementlabelOptions: HTML attributes for the<label>elementencodeLabel: Whether to encode label text