繁体   English   中英

如何将列表/字符串生成器呈现到模板

[英]How to render a list/stringbuilder to template

我有一个从JSon文件中检索到的对象的列表。 我正在尝试将它们渲染到index.scala.html中以创建表,但无法这样做。 救命?

我尝试了@(StringBuilder: mystring) ,但没有成功。

我想知道在成功(希望)将列表/字符串生成器呈现到模板中之后,如何使用它制作表格吗?

public static Result index() {
  List<MetaModel> arr = getData();

  StringBuilder myString = new StringBuilder();
  for(MetaModel model : arr)
  {
    myString.append(model.toString());
  }

  return ok(index.render(myString.toString()));
}  

我的Java有点生锈,无论如何,您都在StringBuilder上调用toString() ,但是在模板中,您使用了错误的类型和语法的@(StringBuilder: mystring) ,它应该是@(myString: String)

相反,如果您想将StringBuilder传递给模板,只需避免调用toString并像这样@(mystring: StringBuilder)绑定变量。

对于List ,只需将变量绑定到模板@(integers: List[Int]) ,然后使用map

<ul>
  @integers.map { someInt => <li>@someInt</li> }
</ul>

或更简单的@for函数:

<ul>
   @for( someInt <- integers) { <li>@someInt</li> }
</ul>

有关JavaPlay文档,请参见更多信息和一些示例。

首先,要接收模板中的数据,应始终在创建变量后声明数据类型。 它应该是@(myString:StringBuilder) 其次,您向模板发送了错误的数据类型。 您已经发送了String类型的数据,但是您正在尝试接收StringBuilder类型的数据

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM