2012-09-05 23 views
0

我在表单中使用Symfony2的flash消息在表单提交后构建不同的视图。 到目前为止,一切都如预期的那样,但是现在我希望session.flash消息(只是一种形式)在呈现此表单响应视图后仍然不活动。Symfony2 app.session。“flash”的使用和清洁

{% if app.session.hasFlash('something') %} 
    ...some code... 
{% endif %} 

我研究有关,但除了在official reference与功能进行删除这个闪光,我还没有找到任何信息。

有人知道哪一个是最好的做法吗?在某些特定位置(如控制器或事件)中删除此闪光灯,或者可能存在一些限制闪光灯消息使用期限的选项。

回答

2

既然你只是检查这个,但不打电话 - 闪光灯仍然会在会议中。要触发会话删除 - 你必须打电话给getFlash()

目前,致电getFlash()removeFlash()之间的区别实际上只是第一个方法返回值。

对于您的特殊情况,我建议您使用第二个参数调用getFlash(),该参数确定在所请求的索引不存在时的默认返回值。

{% if app.session.getFlash('something', false) %} 
    ...some code... 
{% endif %}