我需要使用最新的Play Framework 2.1.1消息、变量、简单的 for 循环等在 Scala 模板中打印一些原始 HTML。一切正常。但是如果我需要做一些逻辑并将原始 HTML 打印到模板中怎么办?
@{
val courts = venue.getCourts()
val totalWidth : Int = 920
.. some other initialization variables/values
var output : String = ""
for(court <- courts) {
output += "<p>SomeComplexString</p>"
}
output
}
在这种情况下,@{}
函数返回output
,但 HTML 被转义,而且它也不那么实用(output
在返回之前将所有内容组合成单个变量)。
如果我把类似的东西
for(court <- courts) {
println("<p>SomeComplexString</p>")
}
它不起作用(我没有收到任何编译错误,但输出没有任何内容)。
我可以
@for(court <- courts) {
<p>SomeComplexString</p>
}
但随后courts
将超出范围(假设我不能courts
在一开始就定义为模板变量)。
解决办法是什么?