我目前正在学习如何使用CakePHP,我在测试Delete函数时遇到了一个错误。这是错误消息:
错误:在非对象
上调用成员函数setFlash()文件:C:\ XAMPP \ htdocs中\ Forum4Alliances \应用\控制器\ PostsController.php
行:57
以下是代码:
<?php
class PostsController extends AppController{
public $helpers = array('Html','Form', 'Session');
public $components = array('Session');
//Part is omitted...
public function delete($id){
if($this->request->is('get')){
throw new MethodNotAllowedException();
}
if($this->Post->delete($id)){
$this->Sessions->setFlash(__('The post with the id: %s has been deleted.', h($id)));
return $this->redirect(array('action' => 'index'));
}
}
}
?>
如您所见,我包含了$ helpers和$ components。在这一点上我找不到任何答案。
干杯=)
答案 0 :(得分:3)
你定义了:
public $components = array('Session');
但比使用:
$this->Sessions->setFlash(.. //**SessionS**
纠正于:
$this->Session->setFlash