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 に答える