Flash messenger没有向内部阵列ZF 1.12添加消息

时间:2014-05-21 00:05:50

标签: php session zend-framework flash-message

我使用Zend Framework 1.12,我的问题是flashmessenger永远不会收到我的消息。这是我的助手:

    $flashMessenger = $this->_getFlashMessenger();

    //get messages from previous requests
    $messages = $flashMessenger->getMessages();

    //add any messages from this request
    if ($flashMessenger->hasCurrentMessages()) {
        $messages = array_merge(
            $messages,
            $flashMessenger->getCurrentMessages()
        );
        //we don't need to display them twice.
        $flashMessenger->clearCurrentMessages();
    }

这是我控制器的代码:

    $this->_helper->flashMessenger->addMessage('Job Created!');

也许这里有会话问题?

不太确定是什么导致添加消息永远不会在flashmessenger中收到消息

谢谢!

1 个答案:

答案 0 :(得分:1)

我从未在ZF1中听说过view helper FlashMessenger(可能是自定义解决方案)。我只知道动作助手FlashMessenger来获取控制器动作中的flash消息。 但是,如果您希望将Flash消息传递到视图|布局中,而不是:

$this->view->messages = $this->_helper->flashMessenger->getMessages(); 

尝试使用Zend_Controller_Action_HelperBroker。在视图中:

$flashMessenger = Zend_Controller_Action_HelperBroker::getStaticHelper('FlashMessenger');
$messages = $flashMessenger->getMessages();
.....