2013-07-26 39 views
0

我使用cakephp的数字类来管理一些基本的分页。这是我创建CakePHP分页格式化首先和最后一个丑陋

<?php echo $this->Paginator->numbers(array('first' => 'First', 'last' => 'Last', 'modulus' => 20)); ?> 

在页面上会打印出下面的分页链接:

First14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34Last 

注意,|分频器不会首先与14和34也和Last之间进行打印。该文档使它看起来像这个功能应该是在默认情况下,无论我如何修改我的分页选项,我不能让|出现。有谁知道什么可以解决这个问题,我不知道我错过了什么。谢谢。

+0

凡在本文档它说,这将是默认行为? – ndm

+0

尽管文档从未明确地说过,但这似乎是一种显示此信息的奇怪方式。 http://book.cakephp.org/2.0/en/core-libraries/helpers/paginator.html#PaginatorHelper – usumoio

+0

我只是想知道,它会帮助确定这是否是一个错误。这种行为确实有点奇怪,不幸的是,对于'last'和'before'使用字符串不会被测试覆盖,只能使用整数,所以很难说出这是怎么回事。看看[代码](https://github.com/cakephp/cakephp/blob/a90cb29c0f6f40b1605f97f0bba8bc74fff70955/lib/Cake/View/Helper/PaginatorHelper.php#L725)让我头痛,似乎有些情况下,它增加了分隔符,但特别是使用'$ first'作为一个数字,它可能是一个字符串混淆了我。 – ndm

回答

1

我有类似的问题,所以我做了每手。这是我的分页程序代码,我在我所有的

= $this->Paginator->first('<<') 
= '&nbsp;'    
= $this->Paginator->prev('<') 
= '&nbsp;' 
= $this->Paginator->numbers(array('seperator' => '|')) 
= '&nbsp;'  
= $this->Paginator->next('>') 
= '&nbsp;' 
= $this->Paginator->last('>>') 

可能不是“最好”的代码页的使用,但它的工作原理,并给出了一个完整的工作分页程序。在你的情况,你会改变< </>>以第一/最后,取下上/下一个条目

希望这有助于