2012-06-14 57 views
0

我不確定這是否像我想的那麼容易,但我希望讓paginator在顯示1時只有我的表格只有一個頁面。如何獲得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->號()返回的1形式鏈接| 2 | 3等。

目前分頁程序會顯示:

<<Previous Next>> 

當只有一個表中的頁面,但2個或更多的頁面就說明

<<Previous 1|2 Next>> 

我想有它顯示一個編號,包括1個單頁表。

任何幫助將是偉大的。 感謝

+0

我做你上面顯示出什麼克服這一點。但是,還沒有研究過它,所以可能有另一種方法。 – tigrang

回答

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'); ?> 
+0

真棒,這很好。謝謝 – RXC