我想要$this->Session->setFlash('text'); $this->redirect('page');
,但不会显示该消息。
我在会话布局中包含了Session Component和Helper以及$this->Session->setFlash()
。但是,在重定向之后,会话不包含任何消息。如果我不重定向,则会显示该消息。
所以我的问题是,重定向后为什么不保留flash消息?它应该是,这就是我以前做过的,但......现在它不起作用。
感谢您的帮助!
这是我的控制器代码:
if(!$this->Test->__test_possible()){
$this->Session->setFlash(__('Insufficient data to create test.', true));
$this->redirect(array('action' => 'index'));
}
...我的布局......(蛋糕default.ctp)
<?php echo $this->Session->flash(); ?>
和AppController:
var $helpers = array('Html', 'Form', 'Session', 'Facebook.Facebook');
var $components = array('Session', 'Auth', 'Facebook.Connect');
答案 0 :(得分:4)
因此,尽管拥有所有正确的代码,我们只是追逐了一个奇怪的问题,即不会显示flash消息。事实证明,在控制器文件中关闭?>
之后有一个空格字符。 ಠ_ಠ
答案 1 :(得分:1)
哦darn ...我已经把Configure :: write('Session.cookie','Capitalize.me');在core.php中,似乎他不喜欢名字中的圆点......现在一切正常。这真令人沮丧。谢谢你的帮助:)
答案 2 :(得分:0)
Flash消息只显示一次,然后从缓存中删除。您可能在重定向之前打印它,这导致它不会显示在重定向上。