【问题标题】:Prevent the same setFlash() message from being output on every page防止在每一页上输出相同的 setFlash() 消息
【发布时间】:2013-05-03 05:42:12
【问题描述】:

我是 CakePHP 新手,我继承了一个使用 CakePHP v1.3 并使用 $this->Session->setFlash() 向用户显示各种消息的项目。

显示消息的一个例子是在成功登录网站之后。问题是,用户访问的每个后续页面都会弹出相同的消息。如何防止这种行为?

【问题讨论】:

    标签: session cakephp cakephp-1.3


    【解决方案1】:

    要仅显示 flashMessages 一次,您应该使用输出它们;

    echo $this->Session->flash();
    

    在您的视野中。见Displaying notifications or flash messages

    此方法将在显示后从会话中删除输出。

    如果您通过某种自定义方法显示这些消息,请务必在之后使用; 清除会话中的消息;

    $this->Session->delete('Message.flash');
    

    在你的视野中

    【讨论】:

    • 太棒了!谢谢。我希望能够在 afterRender() 或 afterFilter() 中调用该方法,但没有这样的运气。
    猜你喜欢
    • 1970-01-01
    • 2012-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-07
    相关资源
    最近更新 更多