我正在使用Yii来显示一个列表页面,该页面通过zii.widgets.CListView自动显示在几个页面中。
当用户点击下一页时,该网址不会更改。但我需要知道用户正在查看哪个页面。
如何在Yii中获取页码?
答案 0 :(得分:1)
在CViewList上禁用Ajax 'ajaxUpdate'=> false
由于ajax调用,您不会直接获取当前页码。如果从CListView禁用ajax,则可以在页面加载时获取当前页码。
我的样本控制器
<?php
$dataProvider = new CActiveDataProvider('MyModel', array('pagination' => array('pageSize' => 3)));
$this->render('MyViewPage', array('dataProvider' => $dataProvider));
?>
现在查看我的观点
<?php
$this->widget('zii.widgets.grid.CGridView',
array(
'dataProvider' => $dataProvider,
'ajaxUpdate'=>false
));
echo "Current Page Number is: ".(int)($dataProvider->pagination->getCurrentPage()+1);
?>
答案 1 :(得分:0)
设置pagination
currentPage
属性
...
'pagination'=>array(
'pageSize'=>2,
'currentPage'=>1,
),
...
currentPage
返回当前页面的从零开始的索引。
尝试在视图页中获取当前页码,如$cuurentPage=>$pages->currentPage+1,
。
答案 2 :(得分:0)
您从数据提供者的CPagination
对象获取当前页面:
$provider = $model->search();
$page = $provider->pagination->currentPage;