我有简单的CakePHP控制器,使用索引方法。
我的愿望是使用相同的控制器和相同的方法,对于两种情况,其中在一种情况下,它将从第一类别中选择(列出)记录,在第二类别中从第二类别中选择。所以它看起来很简单。
但在这两种情况下,我需要不同的“Order By”MySQL声明。
我是否需要重写分页方法,还是有其他方法可以实现这一目标?
提前谢谢!
更新:这是选择记录的方式:
$contents = $this->Content->find('all', array('fields'=>array('Content.*'), 'order'=>array('Content.id DESC'), 'conditions' => array('Content.category_id' => $category_id)));
通常,我会用
进行分页$data = $this->paginate('Content');
但在这种情况下还不够,因为我需要(至少)两个不同的“Order By”陈述
答案 0 :(得分:0)
只需在调用$this->paginate['Model']['order']
之间设置$this->paginate('Model');
即可。如果不清楚,请使用一些代码更新您的答案。
$this->paginate['Content'] = array('fields'=>array('Content.*'), 'order'=>array('Content.id DESC'), 'conditions' => array('Content.category_id' => $category_id)));
$contents = $this->paginate('Content');
请记住,您会遇到问题paginating 2 models on the same page。