在他们的新文档中没有任何闪存消息.
我从他们的github存储库(slimphp / Slim-Flash)安装了flash扩展.一切正常,我可以添加消息,也可以获取这些消息.
// Adding a message
$this->flash->addMessage('test', 'This is a message');
// Getting a message
$this->flash->getMessage('test')[0];
但这只适用于路线内部.当然我希望在我的视图中显示这些消息.
但我只是不知道如何在树枝视图上得到这个消息.
我已经尝试过了:
{{ container.flash.message('test')[0] }}
{{ container.flash.getMessage('test')[0] }}
{{ this.flash.message('test')[0] }}
{{ this.flash.getMessage('test')[0] }}
{{ flash.message('test')[0] }}
{{ flash.getMessage('test')[0] }}
{{ app.flash.message('test')[0] }}
{{ app.flash.getMessage('test')[0] }}
{{ container.flash.test }}
感谢帮助!
最佳答案 您可以在render方法的data属性中添加flash消息:
$this->view->render($res, 'path/to/template.twig', [
'flash' => $this->flash
]);
或者您可以添加中间件并将您的Flash实例添加到树枝参数中
$app->add(function ($request, $response, $next) {
$this->view->offsetSet("flash", $this->flash);
return $next($request, $response);
});
然后应该可以访问twig模板内的消息
{{flash.getMessage(‘test’)}}