【发布时间】:2015-03-21 00:59:37
【问题描述】:
我遇到了关于 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 为数组,给定为 null [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'] 为 null。
if (!isset($this->request->params['paging']) || empty($this->request->params['paging'][$model])) {
return null;
}
有了上面的解释,为什么 request->params['paging'] 为空?它不应该像其他部分一样填充信息吗?排序功能是否损坏或我遗漏了什么?任何帮助将不胜感激。
【问题讨论】:
标签: php cakephp pagination