将其他参数传递给分页URL

时间:2013-04-10 09:28:05

标签: 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,
                                ),
        ));  

2 个答案:

答案 0 :(得分:7)

CPagination需要参数。尝试在'params' => array('foo' => 'bar')中添加pagination

答案 1 :(得分:6)

问题是如何传递“附加”参数。

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

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

    $dataProvider = new CActiveDataProvider($this, array(
        'pagination'=>array(
            'params'  => $pagerparams,
        ),
        ...
    ));

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

{{1}}