播放框架:如何使用map在scala模板中打印索引号

时间:2013-11-19 10:22:44

标签: scala playframework-2.0

您好我在Play框架和scala中很新,继续我正在阅读播放文档,但我在scala模板文件中打印地图内的索引时遇到问题。我试过下面的代码,但它不适合我。

//尝试1:但不能正常工作

@(customer: Customer, orders: Seq[Order])
<h1>Welcome @customer.name!</h1>

<ul> 
@orders.map { case(index,order) =>
  <li>@index</li>
  <li>@order.title</li>
} 
</ul>

//尝试2:但不能正常工作

@(customer: Customer, orders: Seq[Order])
<h1>Welcome @customer.name!</h1>

<ul> 
@orders.map { order =>
  <li>@order.index</li>
  <li>@order.title</li>
} 
</ul>

请给我一些解决方案,或者提供其他参考/资源链接,以便我可以探索更多内容。您可以从play documentation找到上述示例。

1 个答案:

答案 0 :(得分:5)

您可以使用zipWithIndex。它需要一个列表并从中创建一个元组,其中第一部分是列表的元素,第二部分是索引。

示例:

@orders.zipWithIndex.map { case (order, index) =>
  <li>@index</li>
  <li>@order.title</li>
}