抬头:我是Play! framework
&的新手。 Scala
在我的控制器中,我在 flash范围
中设置了一个变量(String类型) flash("success", "Well done!");
在Scala模板中,我们将其称为pageName.scala.html
,我可以显示其值,例如:
@flash.get("success")
但是我想在它周围添加一些HTML:只显示相关的HTML&必要时闪烁变量值。这是一些描述我想做的伪代码:
if successVarInFlashScope is not empty
<div class="global-notification__inner">
<div class="global-notification__msg">@flash.get("success")</div>
</div>
end if
我尝试了一些不同的东西,但没有运气。
我也调查了Play framework documentation
&amp;在StackOverflow
,但也没有运气。
资源:
答案 0 :(得分:3)
<强> Scala的:强>
get
上的Flash
方法会返回Option[String]
,map
:
@flash.get("success").map { msg =>
<div class="global-notification__inner">
<div class="global-notification__msg">@msg</div>
</div>
}
<强>爪哇:强>
Play Java中的 Http.Flash
扩展了java.util.HashMap
,因此get
将返回String
或null
。不幸的是,我们不能像Java中的上述代码一样优雅,因此if
必须这样做。
if(@flash.get("success") != null) {
<div class="global-notification__inner">
<div class="global-notification__msg">@flash.get("success")</div>
</div>
}
或if(@flash.containsKey("success"))