更改Yii中的页面标签? [英] Changing the Page Labels in Yii?
问题描述
我想更改Yii中页面的标签.
I would like to change the the labels of pages in Yii.
我使用Zii.widegt.CListView
来显示项目列表. yii分页的默认结构为[previous] 1 2 4 5 6 7 [next]
,必填结构为< 1....10 11 12 13 14 ....40 >
.
I used Zii.widegt.CListView
to show the list of items. The default structure of yii pagination is [previous] 1 2 4 5 6 7 [next]
required structure is < 1....10 11 12 13 14 ....40 >
.
我阅读了"如何自定义中的分页器标签?",这很有帮助,但是如何显示firstPageLabel
作为页码1而不是<<
和lastPageLabel
显示40页而不是>>
.
I read "How can I customize the labels for the pager in Yii?" which is helpful, but how can I show the firstPageLabel
as page number 1 instead of <<
and lastPageLabel
as 40 instead of >>
.
推荐答案
如果找不到将项目总数(即40)传递给lastPageLabel
替代的方法,则需要替代CLinkPager上课以自动执行此工作. $ lastPageLabel在当前实现中是静态的,不提供对"itemCount"之类的变量的访问.您可以看到以下代码:
If you can't find a way to pass in the total item count (i.e. 40) to the lastPageLabel
override, you will need to override the CLinkPager class to have this work automatically. The $lastPageLabel is static in the current implementation and does not provide access to variables like "itemCount". You can see the code:
$buttons[]=$this->createPageButton($this->lastPageLabel,$pageCount-1,self::CSS_LAST_PAGE,$currentPage>=$pageCount-1,false);
它只是回显$this->lastPageLabel
,它是静态文本.
It just echos $this->lastPageLabel
, which is static text.
如果您创建一个新的寻呼机(例如MyLinkPager),请像这样使用它:
If you make a new pager (called, say, MyLinkPager), use it like so:
$this->widget('zii.widgets.CListView', array(
'dataProvider' => $categoryProjects,
'itemView' => '_itemDetailsView',
'ajaxUpdate' => false,
'pager' => array(
'class' => 'MyLinkPager', // here is your pager
'firstPageLabel' => '<<',
'prevPageLabel' => '<',
'nextPageLabel' => '>',
'lastPageLabel' => '>>',
),
));
这篇关于更改Yii中的页面标签?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!