我试图将Flash内容传递给视图并且它没有显示出来。
Ok( views.html.myView(parameter1,parameter2) ).flashing("success" -> "hallo")
在模板中,我试着像这样使用它:
@(parameter1: String, parameter2: String)(implicit flash: Flash)
@flash.get("success").map { message =>
<p class="success">
@message
</p>
}
问题是,闪存范围永远不会到达视图。我的屏幕上没有输出。当我调试它时,我看到flash地图是空的。
如何以可以处理闪存范围的方式调用myView?
答案 0 :(得分:1)
我也在努力解决这个问题。终于找到了一个不错的解决方案。
关键点是 flash 是视图中的隐式参数。这意味着它需要由Redirect采用,其中 Flashing 是&#34;打包&#34;以及结果。
解决方案:立即创建新的Flash对象
Ok( views.html.myView(parameter1,parameter2) (Flash(Map("success" -> "hallo"))) )
观点保持不变。
受&#34; [2.0.2-scala] Is flashing only intended for redirects?&#34;的启发讨论
答案 1 :(得分:0)
我猜闪烁只适用于Redirect,所以使用Redirect或只是将带有成功信息的参数传递给视图
答案 2 :(得分:0)
如果响应是200,则没有理由闪烁。只需将地图传递给您的视图即可。 (您无法在重定向上传递地图,因此您有意在那里使用闪光灯。)