1

我试图将 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?

4

3 回答 3

1

我也曾在这个问题上苦苦挣扎。终于找到了一个不错的解决方案。

关键点是flash是视图中的隐含参数。这意味着它需要由 Redirect 进行,其中Flashing与结果一起“打包”。

解决方案:立即创建一个新的 Flash 对象

Ok( views.html.myView(parameter1,parameter2) (Flash(Map("success" -> "hallo"))) )

视图保持不变。

受“ [2.0.2-scala] 闪烁仅用于重定向吗? ”讨论的启发

于 2014-11-06T00:31:08.783 回答
0

我猜闪烁只适用于重定向,所以使用重定向或只是将带有成功信息的参数传递给视图

于 2013-10-09T19:11:27.697 回答
0

如果响应是 200,则没有理由闪烁。只需将 Map 传递给您的视图。(你不能在重定向上传递地图,所以你想在那里使用闪光灯是有道理的。)

于 2017-02-16T23:47:45.167 回答