Ответ 1
Правильный тип: Seq[(String, String)]
. Это означает последовательность пар String. В Scala существует способ определить пары с помощью стрелки: a->b == (a, b)
. Таким образом, вы можете написать, например:
@select(field = myForm("selectField"), options = Seq("foo"->"Foo", "bar"->"Bar"))
Но есть еще один помощник, как показано в документации, для создания последовательности опций выбора: options
, поэтому вы можете переписать вышеуказанный код как:
@select(myForm("selectField"), options("foo"->"Foo", "bar"->"Bar"))
В случае, если ваши значения параметров совпадают с их меткой, вы можете даже сократить код до:
@select(myForm("selectField"), options(List("Foo", "Bar")))
(примечание: в Play 2.0.4 options(List("Foo", "Bar"))
не компилируется, поэтому вы можете попробовать этот options(Seq("Foo", "Bar"))
)
Чтобы заполнить параметры из кода Java, более удобным способом является использование перегруженной функции options
с помощью java.util.List<String>
как параметр (в этом случае значения параметров будут такими же, как и их метка) или перегруженной функцией с помощью java.util.Map<String, String>
.