所以我在我的模型的afterFind中运行一个简单的函数:
public function afterFind($results) {
foreach ($results as $key => $val) {
if ($val['User']['password']) {
$results[$key]['User']['status'] = 'active';
} else if ($val['Ticket']['id']) {
$results[$key]['User']['status'] = 'pending';
} else {
$results[$key]['User']['status'] = 'inactive';
}
}
return $results;
}
它给了我两个错误,即使这些变量已定义,并且页面正常呈现(除了错误):
Notice (8): Undefined index: User [APP/Model/User.php, line 145]
Notice (8): Undefined index: Ticket [APP/Model/User.php, line 147]
当我死了()时,一切都很好......当我死了()分页结果时,即使所有数据都相同,我仍然会得到这些错误。
是什么给出了?
答案 0 :(得分:2)
您需要检查是否已设置密钥。当分页返回的唯一值是计数时,分页正在进行find('count
)`查询时,可能会失败。
像isset($results[$key]['User']['password'])
这样的检查可以解决问题。