【问题标题】:Play Framework 2.0 template engine define writabel variablesPlay Framework 2.0 模板引擎定义可写变量
【发布时间】:2012-07-19 09:19:18
【问题描述】:

我正在使用基于 scala 的播放框架模板引擎。 控制器是用 Java 编写的。

有没有办法定义内联可写变量?

我刚刚在文档中找到了这个:

@defining(user.getFirstName() + " " + user.getLastName()) {
    <div>Hello @fullName</div>
}

但这只会创建一个只读变量。

编辑: 我在我的 html 页面中使用了一个循环:

@for(variable <- variables) {

这种循环不会给我一个索引变量。 我需要这个索引来为第一个循环和所有其他循环提供不同的输出。 希望这很清楚吗?

所以我只是想我可以在循环之外创建一个索引变量并在每个循环中递增它。

有人知道吗? 谢谢

【问题讨论】:

  • 请多写一点你想要达到的目标,也许我可以建议你一些其他的解决方案,但我需要了解更多。一般来说,恕我直言,在模板引擎级别使用变量并不是一个好主意。另一方面,Play 提供了一些好帮手(如果您的控制器使用 Java 或 Scala 版本,PS 也可以编写)
  • 我只是编辑我的帖子。希望现在很清楚。

标签: playframework playframework-2.0


【解决方案1】:

试试:

@for(for(i <- 0 to list.size-1) {
   @list(i)
}

或者简单地说:

@for(i <- list.indices) {
    @list(i)
}

(tip from google group)

【讨论】:

    【解决方案2】:

    我认为 zipWithIndex 是你需要的:

    @variables.zipWithIndex.map { case (variable,index) => <h1>@variable</h1>}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-29
      • 1970-01-01
      • 2011-11-24
      • 2012-06-24
      相关资源
      最近更新 更多