我遇到了关于CakePHP 2.6.X和分页的新问题;我之前从未遇到过此问题,只有在尝试在视图中使用$ this-> Paginator-> sort(...)时才会发生这种情况。
$this->Paginator->sort('Page.id', 'ID', array('model' => 'Page'));
我已完成控制器中分页对象的正常设置
$this->Paginator->settings = array(
'contain' => false,
'group' => 'Page.id',
'order' => 'Page.name ASC',
'limit' => 20
);
$results = $this->Paginator->paginate('Page');
我在视图文件
中得到了这个警告(2):array_filter()期望参数1为数组,给定[CORE / Cake / View / Helper / PaginatorHelper.php,第435行] 警告(2):array_merge()[function.array-merge]:参数#1不是数组[CORE / Cake / View / Helper / PaginatorHelper.php,第435行]
在跟踪问题时,它源于第126行的params函数,在第131行,它返回null,因为request-> params [' paging']为空。
if (!isset($this->request->params['paging']) || empty($this->request->params['paging'][$model])) {
return null;
}
通过上面的解释,为什么request-> params [' paging']为空?难道不会像其他部分一样填充信息吗?排序功能是打破了还是我遗漏了什么?任何帮助将不胜感激。
答案 0 :(得分:0)
您是否尝试删除$ options参数?如果您已在密钥中执行此操作,则无法确定是否需要指定模型。
$this->Paginator->sort('Page.id', 'ID');