我对Cakephp3 ORM有一些疑问,以及find()函数返回的内容。
因此,使用基本查找(' all'),返回一个对象,并从此函数获取数据,我使用
foreach()
或
execute()->fetchAll('assoc')
此代码可用于创建分页。
$data = $obj->find('all');
$this->set('paginations', $this->paginate($data));
这是一个基本示例,但正确配置的分页将起作用。
但是我有从mysql查询生成的代码:
$conn = ConnectionManager::get('default');
//getAllphotos() is a standard mysql query placed in model table.
$all = $conn->execute($data->getAllphotos());
现在,这不适用于分页:
$this->set('paginations', $this->paginate(all));
所以$ all不能用作分页的参数。
有没有办法将它转换为像对象一样的Cakephp paginator,或者我可能需要创建另一个查询,如下:
$all = $conn->execute($data->getAllphotos());
感谢您的帮助。