如何让Paginator-> numbers()显示1

时间:2012-06-14 18:29:03

标签: cakephp hyperlink navigation numbers paginator

我不确定这是否像我想的那么容易,但是当我的桌子只有一个页面时,我想让分页器显示1。

我以为可以这样做:

<p> <?php echo $this->Paginator->prev('« Previous', null, null, array('class' => 'disabled')); ?>;
    <?php if(1 >= $this->Paginator->numbers())
                echo 1;
            else
                echo $this->Paginator->numbers();   ?>
    <?php echo $this->Paginator->next('Next »', null, null, array('class' => 'disabled')); ?>; </p>

但后来我意识到paginator-&gt; numbers()以1 | 2 | 3的形式返回链接,依此类推。

目前,分页器将显示:

<<Previous Next>>

当表格中只有一个页面但是显示2页或更多页面时

<<Previous 1|2 Next>>

我希望它能够随时显示一个数字,包括单页表格中的数字。

任何帮助都会很棒。 感谢

1 个答案:

答案 0 :(得分:1)

您可以做的是创建一个名为pagination.ctp的元素,并将以下内容放入:

<p>
<?php
    echo $this->Paginator->prev('« Previous', null, null, array('class' => 'disabled'));
    $numbers = $this->Paginator->numbers();
    if (empty($numbers)) {
        $numbers = 1; // or any markup you need
    }
    echo $numbers;
    echo $this->Paginator->next('Next »', null, null, array('class' => 'disabled')); ?>
</p>

然后,只要你需要:

<?php echo $this->element('pagination'); ?>