Тема: Yii, CListView, Pagination
Сьогодні сталося так. що віджет CListView трохи не правильно відображав пагінацію. Тобто логіка відображення в данному випадку мені не підходила, бо мені треба було перенести пагінацію в інше місце.
Я вирішив це наступним чином.
Контроллер
[code=php]
//метод повертає екземпляр класу CActiveDataProvider з потрібними мені опціями
$regions = Users::getRegions(Yii::app()->user->id);
//получаєм екземпляр класу CPagination, який сформував CActiveDataProvider
$pagination = $regions->getPagination();
$this->render('index',array(
'dataProvider' => $regions,
//передаєм його в вюху
'pagination' => $pagination
));
[/code]
Вюха.(CGridView мені не підходив)
[code=html]
<h1>Документооборот</h1>
<br>
<table class="table table-striped table-bordered table-condensed">
<?
$this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'_table',
//вимикаємо пагінацію в CListView
'enablePagination' => false,
));
?>
</table>
<!-- Переносимо пагінацію в потрібне місце -->
<?php $this->widget('CLinkPager', array(
'pages' => $pagination,
)) ?>
[/code]
Надіюсь комусь буде корисно.