尽管几年前在旧版本的cakephp用于学校,但我在cakephp上还是很新。现在它要求我们使用$ session-> flash();显示我们的错误消息。我把它放在我的视图/ layouts / default.ctp中,这就是我得到的
Call to a member function flash() on a non-object in
C:\xampp\htdocs\blog\app\View\Layouts\default.ctp on line 9
这是我的代码:
class PostsController extends AppController {
var $name = 'Posts';
var $helpers = array('Html', 'Form', 'Session');
public function delete($id = null) {
$this->Post->id = $id;
if (!$id) {
$this->Session->setFlash(_('Post does not exist!', true));
$this->Session->redirect(array('action'=>'index'));
}
if ($this->Post->delete($id)) {
$this->Session->setFlash(__('Post deleted', true));
$this->redirect(array('action' => 'index'));
}
}
}
答案 0 :(得分:2)
您必须在布局中使用$this->Session->flash()
,$session->flash()
是CakePHP 1.x中使用的方法。
答案 1 :(得分:-1)
$ this-> Session-> setFlash(__(' Post deleted',true)); 为什么使用双倍得分你可以简单地使用
$ this->会话 - > setFlash('发布已删除');