我想在模板中创建一个List(scala.html)。
我试过了
val list = @{ List("a", "b", "c", "d", "e") }
val list = List("a", "b", "c", "d", "e")
@list = @{ List("a", "b", "c", "d", "e") }
@list = List("a", "b", "c", "d", "e")
@defining(List("a", "b", "c", "d", "e")) { list =>
// code here
}
但我总是收到错误object List is not a value
。我不知道Scala(我现在正在学习),但在API中它有以下示例
// Make a list via the companion object factory
val days = List("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday")
我想要做的是过滤地图。
我有一个Map [Symbol,Any],我正在尝试获取上面列表中没有键的所有项目。像这样的东西
@f = @{ map.filterKeys(!list.contains(_)) }
// i do not know if the above statement is correct, because i can't get over there
答案 0 :(得分:6)
错过了导入。我添加了
@import scala.collection.immutable._
或只是
@import scala._
在视图中(scala.html)并且运行得很好。
我认为scala
包类似于java.lang
包
答案 1 :(得分:2)
从您看来,您似乎正在将其中的代码写入其中一个视图文件中。而不是在scala中解决这个问题,你最好在控制器类中处理这个任务,然后将该列表传递给视图文件。用'@'表示法做这种工作变得棘手。
答案 2 :(得分:-2)
我认为您应该使用Set
代替List
,如下所示:
@{ map.filterKeys(!Set("a", "b", "c", "d", "e").contains(_)) }