0

我正在使用 cakephp 创建一个应用程序。我在从控制器模型以外的模型中分页数据时遇到麻烦。

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

在我的控制器中,我想在模型上使用 cakephp 分页方法对提供者进行分页,例如...

$this->Provider->paginate();

但它会导致 mysyl 错误

但其他方法工作得很好,比如

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

在这种情况下如何实现分页。

4

2 回答 2

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 } ?>
于 2013-05-20T12:48:09.747 回答
0

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

你想要$this->paginate();,没有$this->Provider->paginate();

于 2013-05-20T12:04:13.793 回答