具有常规非数据库数组的CActiveDataProvider


CActiveDataProvider with a regular non-database array

我在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吗?

如果没有,是否有其他方法可以为自定义的非数据库相关数组创建分页?

这种情况下有CArrayDataProvider。

$dataProvider=new CArrayDataProvider($items, array(
    'pagination'=>array(
        'pageSize'=>10,
    ),
));
相关文章:
  • 没有找到相关文章