Witam,
Mam pewien problem związany z wysłaniem obiektu CActiveDataProvider do CListView i podziału wyników na strony.
$dataProvider=new CActiveDataProvider('Product', array(
'criteria'=>array(
'with'=>array('...'),
'join'=>'INNER JOIN ...,
'order'=>'t.sort_order ASC',
'condition'=>'...',
'together'=>true,
),
));
W widoku ustawiam sobie rozmiar strony i wyświetlam wyniki korzystając z widgetu CListView
$dataProvider->pagination->pageSize=15;
$this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'_view',
'enablePagination'=>true,
));
W konkretnym przypadku CADP zwraca 15 wyników. PageSize również jest ustawiony na 15. I co otrzymuję? Otrzymuję wyświetlone 6 wyników z napisem u góry ‘Wyświetlono rezultaty 1-6 z 15.’ Wszystko fajnie ale na dole nie mam paska paginacji.
Dopiero ustawiając pageSize na wartość poniżej 15 pojawia się pasek paginacji, całkiem sensowne.
Teraz ustawiając przykładową wartość 10, otrzymuję… 5 wyników. No świetnie, to chociaż poprzeglądam to sobie z pomocą paska paginacji - a tu nie ma tak łatwo! Są tylko dwie strony, z czego pierwsza pokazuje 1-5 z 15 a druga nagle 11-14 z 15.
Jak to skonfigurować żeby działało poprawnie?
Pozdrawiam.