2013-05-20 23 views
0

我使用cakephp来创建应用程序。 我正面临来自模型以外的数据分页控制器模型的麻烦。派生在cakephp

var $uses = array('Admin.Provider','Admin.Page'); 

在我控制我想用CakePHP的PAGINATE方法型号一样进行分页商...

$this->Provider->paginate(); 

但结果纳入mysyl错误

的击打其他方法工作正常像

$this->Provider->find('list') 

我怎么能在这种情况下实现分页。

+0

http://book.cakephp.org/2.0/en/controllers.html – 2013-05-20 12:05:00

回答

0

paginate()是在控制器中,而不是模型。

你想要$this->paginate();,而不是$this->Provider->paginate();

+0

但控制器没有任何表说它的家庭控制器没有任何表。但我想加载提供商并使用分页。 –

1
$this->paginate = array(
        'conditions' => array('AND'=> 
        array(
         'modelname.fieldname'=>$this->id 
        )), 
        'limit' => 10, 
        'order'=>array('modelname.fieldname')); 
       $sponsors = $this->paginate('modelname'); 

    $this->set('sponsors', $sponsors); 


// use in ctp 

<?php if(!empty($sponsors)){ ?> 
      <div class="paging-container"> 
       <div class="paging gnrl-pading"> 
        <a href="#"> <?php echo $paginator->prev('<<',array('class' => 'prev')); ?></a> 
        <ul class="pagenos"> 
         <li> 
          <?php echo $paginator->numbers(array('separator'=>' ')); ?> 
         </li> 
        </ul> 
        <a href="#"><?php echo $paginator->next('>>', array('class' => 'next')); ?></a> 
        <p class="page-indic"> 
         Page <?php echo $paginator->counter(); ?> 
        </p> 
       </div> 
      </div> 
      <?php } ?> 
+0

'AND'不是必需的。 – Dave