Примеры постраничной навигации

Контроллер:

function actionIndex(){
        $criteria = new CDbCriteria();
 
    $count=Article::model()->count($criteria);
 
    $pages=new CPagination($count);
    // элементов на страницу
    $pages->pageSize=10;
    $pages->applyLimit($criteria);
 
    $models = Article::model()->findAll($criteria);
 
    $this->render('index', array(
        'models' => $models,
        'pages' => $pages
    ));
}

Шаблон view:

<?foreach($models as $model):?>
  // выводим модели
<?endforeach?>
 
// рисуем пейджер
<?$this->widget('CLinkPager', array(
    'pages' => $pages,
))?>

Контроллер:

public function actionUsers()
{
 $dataProvider=new CActiveDataProvider('Users', array(
  'criteria'=>array(
   'order'=>'registrationdate DESC',
  ),
  'pagination'=>array(
   'pageSize'=>Yii::app()->params['usersPerPage'],
  ),
 ));
 
 $this->render('users',array(
  'dataProvider'=>$dataProvider,
 ));
}

Представление:

<?php foreach($dataProvider->data as $user):?>
 
<?php endforeach; ?>
 
 
<?php $this->widget('CLinkPager',array('pages'=>$dataProvider->pagination)); ?>