在Play 2.6中,重复元素的默认表单绑定是Seq
,List
和Set
,例如:
Form(
"name" -> seq(text)
)
但是我在几种情况下使用Vector集合类型,因为它的整体性能(例如,基于索引的访问)比Seq
或Iterable
的默认实现{{1 }}(如果处理索引搜索,则在处理Head或Tail元素时表现良好,线性时间)。
在当前的Play 2.6中,List
或Vector
(默认为IndexedSeq
)没有任何默认的Form绑定。
映射Vector
的默认方法是什么?
答案 0 :(得分:1)
您可以像这样定义自己的映射,
def vector[A](mapping: Mapping[A]): Mapping[Vector[A]] =
RepeatedMapping(mapping).transform(_.toVector, _.toList)
然后像这样使用它
Form(
"name" -> vector(text)
)