nterms/yii2-pagesize-widget

Widget for enabling dynamic page size selection on GridView

Installs: 255 171

Dependents: 4

Suggesters: 0

Security: 0

Stars: 38

Watchers: 9

Forks: 18

Open Issues: 3

Type:yii2-extension

v2.0.1 2014-11-14 04:41 UTC

This package is not auto-updated.

Last update: 2024-11-09 17:45:33 UTC


README

PageSize widget is an extension to the Yii2 GridView that enables changing the size of a page on GridView.

Latest Stable Version Total Downloads Latest Unstable Version License

Installation

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.

Usage

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.

Configurations

Following properties are available for customizing the widget.

  • label: Text for the lbel
  • defaultPageSize: This value will be used if there's no page size selected
  • pageSizeParam: The name of the page size parameter used for the pagination widget in your grid view
  • sizes: An array of key values to be used as page sizes. Both kay and value should be integers
  • template: A template string to be used for rendering the elements. Default is '{list} {label}'
  • options: HTML attributes for the <select> element
  • labelOptions: HTML attributes for the <label> element
  • encodeLabel: Whether to encode label text

License

MIT