将其他参数传递给分页URL

Pal*_*mar 4 yii

我使用CArrayDataProvider进行分页.现在只在网址中传递页码.我想传递一些更多的附加属性.我怎么做?这是我的数据提供者.

$dataProvider = new CArrayDataProvider($arrayData,  array(
                                'keyField'=>'entity_id',
                                'sort'=>array(
                                        'attributes'=>array('entity_id'),
                                        'defaultOrder'=>array('entity_id' => false),
                                ),
                                'pagination'=>array(
                                        'pageSize'=>20,
                                ),
        ));  
Run Code Online (Sandbox Code Playgroud)

Eir*_*oem 7

CPagination需要params.尝试添加'params' => array('foo' => 'bar')在 pagination.


Ger*_*erg 7

问题是如何传递"附加"参数.

接受的答案的代码将覆盖您现有的$ _GET参数:

    'params'  => array('foo' => 'bar')
Run Code Online (Sandbox Code Playgroud)

要添加"其他"参数,请先将它们添加到现有的$ _GET参数中:

    $pagerparams = $_GET; 
    $pagerparams['foo'] = 'bar';

    $dataProvider = new CActiveDataProvider($this, array(
        'pagination'=>array(
            'params'  => $pagerparams,
        ),
        ...
    ));
Run Code Online (Sandbox Code Playgroud)