1

我在 Yii 应用程序中有一组要分页的 $items。该数组与数据库无关,因此这里没有要考虑的条件,只是我需要显示的一堆定义的项目。所以我试图像这样使用 CActiveDataProvider :

        $dataProvider = new CActiveDataProvider($items, array(
            'pagination' => array(
                'PageSize' => 10,
            ) 
        ));

        $this->renderPartial('view', array('dataProvider'=>$dataProvider));

然后在视图中我试图显示信息:

      $this->widget('zii.widgets.CListView', array(
        'dataProvider'=>$dataProvider,
        'itemView'=>'_view',
        'template'=>"{items}\n{pager}",
      ));

我得到一个Call to a member function getDbCriteria() on a non-object完全可以理解的致命错误,因为我的 $items 数组是自定义的,而不是与数据库相关的,所以我的问题是如何解决这个问题,甚至可以使用 CActiveDataProvider 吗?

如果不是,是否有另一种方法可以为自定义的非数据库相关数组创建分页?

4

1 回答 1

4

这种情况下有CArrayDataProvider

$dataProvider=new CArrayDataProvider($items, array(
    'pagination'=>array(
        'pageSize'=>10,
    ),
));
于 2014-04-22T19:59:25.450 回答