从find(';all';)到paginate()会破坏CakePHP中的数据吗?
我正在尝试使用afterFind在显示之前操纵字段。当我使用find('all')时,它工作得很好-然后我切换到paginate(),以便,嗯,paginate。现在它告诉我以下错误:从find(';all';)到paginate()会破坏CakePHP中的数据吗?,php,cakephp,pagination,Php,Cakephp,Pagination,我正在尝试使用afterFind在显示之前操纵字段。当我使用find('all')时,它工作得很好-然后我切换到paginate(),以便,嗯,paginate。现在它告诉我以下错误: Notice (8): Undefined index: Event [APP/Model/Event.php, line 24] Notice (8): Undefined index: Event [APP/Model/Event.php, line 25] afterFind脚本: public
Notice (8): Undefined index: Event [APP/Model/Event.php, line 24]
Notice (8): Undefined index: Event [APP/Model/Event.php, line 25]
afterFind脚本:
public function afterFind($results, $primary = false) {
foreach ($results as $key => $val) {
if (isset($val['Event']['begindate'])) {
$results[$key]['Event']['begindate'] = $this->dateFormatAfterFind(
$val['Event']['begindate']
);
}
}
return $results;
}
这是控制器:
public function index() {
$this->Event->recursive = 2;
$events = $this->Paginate('Event');
$sorted=Set::sort($events,{n}.Event.begindate,'asc');
$this->set('events',$sorted);
}
那么从find('all')到paginate发生了什么变化呢?您应该试试这段代码,它可能对您有用
public function index() {
$this->Event->recursive = 2;
$events = $this->Paginator->paginate('Event');
$this->set(compact('events'));
}
我认为您应该使用
$this->paginate('Event')代码>p
应该很小。