Skip to main content

yii, pagination simple

Pagination in yii is quite simple. Before you can understand the solution i am presenting below you need to know how YII works basically and the model controller and view approach of yii:


Add following code in your controller action function:


function actionIndex(){
    $criteria = new CDbCriteria();
    $count=Article::model()->count($criteria);
    $pages=new CPagination($count);

    // results per page
    $pages->pageSize=10;
    $pages->applyLimit($criteria);
    $models = Post::model()->findAll($criteria);

    $this->render('index', array(
    'models' => $models,
         'pages' => $pages
    ));
}




And to display the pagination in view file simply use following code:

<?php foreach($models as $model): ?>
    // display a model
<?php endforeach; ?>

// display pagination
<?php $this->widget('CLinkPager', array(
    'pages' => $pages,
)) ?>


Popular posts from this blog

yii, recursive function to create category sub category hierarchy

Create this function in the category model file: ---------------------------------------------------------------------------------  <?php public function get_category_hr ( $cat_id , $selected_cat_id , $level_string ) { $select_str = '' ; if ( ! $level_string ) { $level_string = '' ; } if ( $cat_arr = $this -> findAll ( 'category_parent_id=' . $cat_id )) { foreach ( $cat_arr as $cat ) { $select_str .= "<option value= { $cat -> category_id } " ; if ( $selected_cat_id == $cat -> category_id ) $select_str .= ' selected' ; $select_str .= "> { $level_string }{ $cat -> category_name } </option>" ; $select_str .= $this -...

yii, Executing a SQL without calling a Model

yii, Executing a SQL without calling a Model <? $connection = Yii :: app () -> db ; $sql = "SELECT id,username FROM users" ; $command = $connection -> createCommand ( $sql ); $dataReader = $command -> query (); $rows = $dataReader -> readAll (); print_r ( $rows ); ?>