0

我需要知道这一点,以便在需要时附加消息(闪烁)。

这样我可以给用户完整的反馈并避免一个闪存被覆盖(在重定向中,例如,最后一个控制器通常可以做到这一点)。

我阅读了文档,但在 setFlash() 中没有找到任何需要此附加的选项。

我知道有一个 Session::read(),但我不知道要搜索什么键..

谢谢!

4

2 回答 2

1

可以使用以下方法检索闪存消息:

$message = $this->Session->read('Message.flash.message');
echo $message;
于 2012-09-13T07:06:16.370 回答
1

您正在寻找的是:

$this->Session->read('Message');

Message 是保存当前用户会话消息的键,无论是 flash 消息还是 auth 消息。一个简单的 pr($this->Session->read()) 会给你类似的输出:

Array(
    ['Auth'] => array(
        ... your auth keys and values here
    ),
    ['Message'] => array(
        ['flash'] => ... your current flash message array (if any)
        ['auth'] => ... your current auth message array (if any)
    )
)

虽然我不确定你为什么担心。当你这样做

$this->Session->setFlash('your message');
$this->redirect('/');

即使您确实有重定向,会话消息也会保留并显示在重定向页面上。您只需要确保您正在输出闪存消息。

于 2012-09-13T00:14:00.790 回答