我正在使用可包含的分页操作和afterFind()
来删除记录中的空数组,但这会导致分页出现问题。
这是afterFind
函数:
function afterFind($results, $primary=false) {
if ($primary == true) {
foreach ($results as $key => $value) {
if (empty($value['Orderstatus'])) {
unset($results[$key]); //removing record if the orderstatus is empty
}
}
}
return $results;
}
获取中总共有四条记录我只删除了一个空数组(记录),
数据库中的总记录4
使用find后删除记录为1
剩余记录3
paginate limit是2
它在我的第一页显示两条记录,但我无法访问第二页或应该在第二页的最后一条记录。
答案 0 :(得分:0)
您似乎已取消分页所需的行。我建议你为模型制作自定义的paginate函数(覆盖默认的cakePHP的分页)。请在此处查看示例链接:Forced Paginate Count
希望它有助于解决您的问题。
答案 1 :(得分:0)
为什么不对查询执行条件,以便不返回没有OrderStatus的记录?