从CakePHP中的模型方法数据中分页

时间:2013-10-27 13:25:42

标签: php cakephp cakephp-2.0

我从CakePHP框架开始。我想在我的网站上使用paginator,但我想在模型中进行所有操作。

当我在控制器中使用all时,可以:

public function index() {
        $this->Paginator->settings = $this->paginate;
        $data = $this->Paginator->paginate('MyModel');
        $this->set('data', $data);
    }

但是当我想从模型使用方法时遇到列问题:MyModel:

public function index() {
    $this->Paginator->settings = $this->paginate;
    $data = $this->Paginator->paginate($this->MyModel->getData());
    $this->set('data', $data);
}

//模型方法

public function getData()
    {
        $data = $this->find('all');
        return $data;
    }

ofc当我显示没有paginate的方法时没问题:

public function index() {
    $data = $this->MyModel->getData();
    $this->set('data', $data);
}

1 个答案:

答案 0 :(得分:1)

朋友,您正试图在"数组"上应用分页。不在模特身上。 Cakephp为模型实例的分页数据提供功能。由于模型数据事务方法具有数据库连接对象和分页组件管理该对象。