在yii中的表的分页

时间:2015-09-15 03:43:24

标签: php yii pagination

我正在使用Yii应用程序。在那里如何给表内容分页(不使用cgridview)。

配置/ main.php

.*

在控制器中,

'params'=>array(
    'adminEmail'=>'webmaster@example.com',
    'listPerPage'=> 10,//default pagination size
),

在视图中,

  public function actionOutbox() {
    $criteria = new CDbCriteria;
    $criteria->condition = 'from_userid = :id';
    $criteria->order = 'time DESC';
    $criteria->params = array (':id'=>Yii::app()->user->id);

    $item_count = Email::model()->count($criteria);
    $model      = Email::model()->findAll($criteria);

    $pages = new CPagination($item_count);
    $pages->setPageSize(Yii::app()->params['listPerPage']);
    $pages->applyLimit($criteria);

    $this->render('outbox', array(
        'model' => $model,
        'item_count'=>$item_count,
        'page_size'=>Yii::app()->params['listPerPage'],
        'items_count'=>$item_count,
        'pages'=>$pages,
    ));
}

通过使用此代码,当前页面大小不起作用。显示表中的完整值。我也将页面大小从10改为2,但没有工作。

我做错了什么?

请帮帮我。提前致谢

1 个答案:

答案 0 :(得分:1)

你使用findAll没有限制,并希望yii了解分页?

使用CGridView小部件代替它并在DataProvider中设置分页(不创建单独的分页对象:它不会影响结果计数)。

请阅读this topic

感谢。