php – Symfony2 session-flash与twig中的if子句不起作用
发布时间:2020-12-13 17:25:47 所属栏目:PHP教程 来源:网络整理
导读:我尝试对设置的会话闪存做出反应,但总是得到else路径 Symfony 2.1.3 控制器: $this-get('session')-getFlashBag()-set('contactActionNoticeError','Message not sent'); 查看(尝试“旧”和新风格)但我得到了bla2 {% if app.session.flashbag.has("contactA
我尝试对设置的会话闪存做出反应,但总是得到else路径
Symfony 2.1.3 控制器: $this->get('session')->getFlashBag()->set('contactActionNoticeError','Message not sent'); 查看(尝试“旧”和新风格)但我得到了bla2 {% if app.session.flashbag.has("contactActionNoticeError") or app.session.hasFlash("contactActionNoticeError") %} bla1 {% else %} bla2 {% endif %} 当显示所有闪烁时: {% for label,flashes in app.session.flashbag.all %} {% for flash in flashes %} {{ label }} - {{ flash }} {% endfor %} {% endfor %} 我明白了: contactActionNoticeError - Message not sent 解决方法
获取flashbag内容,然后查看它是否为空:
{% set contactActionNoticeError = app.session.flashbag.get("contactActionNoticeError") %} {% if (contactActionNoticeError is not empty) %} bla1 {% else %} bla2 {% endif %} 您仍然可以显示错误(从documentation获取的代码): {% for flashMessage in contactActionNoticeError %} <div> {{ flashMessage }} </div> {% endfor %} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |