如何在cakePHP中使用paginatation helper在同一页面上显示多个结果集?他们会独立分页。
编辑:
我找到了一个不能做到这一点的原因是因为分页助手会从控制器/动作获取其URL,然后在最后附加其参数。
如果它从地址栏中提取了url,拥有自己的唯一变量,然后执行str_replace以使下一个导航到已导入(如果已经分页),或者如果它不存在则附加它。
现在,我正在考虑重写分页助手来支持这个功能,但我不确定我是否需要或者他们是否已经支持这个并且我做错了
答案 0 :(得分:5)
这是我的解决方案。在您的控制器中:
function index(){
// Your default model
$this->set('model1', $this->paginate());
// Pagination for model2
$this->set('model2', $this->paginate('Model2'));
}
在您看来:
// Display your model1 data, and then for prev and next
echo $paginator->prev($options = array('model' => 'Model1'));
echo $paginator->next($options = array('model' => 'Model1'));
// Display your model2 data, and then for prev and next
echo $paginator->prev($options = array('model' => 'Model2'));
echo $paginator->next($options = array('model' => 'Model2'));
要点是将您的模型名称输入到Controller的paginate方法和Paginator的链接方法(sort,prev,next)。