Cakephp-从另一个模型分页数据
我试图从住宿控制器进行分页,但使用MemberWall模型的数据 这是密码Cakephp-从另一个模型分页数据,cakephp,find,Cakephp,Find,我试图从住宿控制器进行分页,但使用MemberWall模型的数据 这是密码 Accommodation $data = $this->Accommodation->Member->MemberWall->paginate('MemberWall'); MemberWall var $paginate = array( 'limit' => 4, 'order' => array( 'MemberWall.created' => 'asc'
Accommodation
$data = $this->Accommodation->Member->MemberWall->paginate('MemberWall');
MemberWall
var $paginate = array(
'limit' => 4,
'order' => array(
'MemberWall.created' => 'asc'
)
);
我得到这个错误
SQL Error: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use nea.... Query: paginate
谢谢,亚历克斯$this->paginate('MemberWall');iirc就是它的工作方式
$this->住宿->会员->会员墙->分页('MemberWall')代码>正在调用MemberWall模型上的方法。paginate()是一种控制器方法
这是真正的答案
$data = $this->paginate($this->Accommodation->Member->MemberWall);
我在文件里也找不到这个。实际上,您可以将模型对象传递到paginate方法中。我已经尝试过了,它可以通过两种方式工作:
$this->paginate('MemberWall')代码>
$this->paginate($this->住宿->会员->会员墙)代码>
在我的代码中,我使用了如下内容:
$this->loadModel('MemberWall')代码>
$this->paginate=array(…)代码>
$data=$this->paginate('MemberWall')代码>我收到此错误,Controller::paginate()-在Controller中找不到模型MemberWall控制器[CORE/cake/libs/controller/controller.phpI发现解决这一问题的最佳方法是使用js分页。感谢您的帮助!这一切都很好,但为什么要在模型已加载时加载它呢?最好链接到已加载的模型,而不是第二次加载它。这就是问题所在,模型尚未加载或分页可能会失败与之关联。这是更详细的解决方案。尤其是如果您要更改paginate
选项+1@ChuckBurgess-不是真的…模型已经可以访问,OPs代码不工作的原因是因为paginate是控制器方法,而不是模型方法。