我试图使用Play的帮助器@select来填充组合!在一个形式,但搜索了很多,我没有找到我真正需要的东西。
我想要这样的事情:
@select(
filmeForm("Director"),
options(Seq(aListOfDirectors))
)
这是一种电影注册形式,可以获得导演的外键。 我需要列出董事姓名,当我发送表格时,我需要获得所选董事的身份。
如果不可能采用这种方式,一些类似的方法将非常有用。
任何人都可以帮助我吗?
提前致谢。
答案 0 :(得分:7)
HTML C:/src/www/simple.ts (1,8): Expected identifer after 'import'
代码可以包含一组{ "compilerOptions": {
"target": "es5",
"module": "amd",
"sourceMap": true
}}
代码,如下所示:
select
因此,为了正确填充option
的{{1}} s,播放<select id="directors-select" name="director">
<option value="steven-spilberg">Steven Spilberg</option>
<option value="stanley-kubric">Stanley Kubric</option>
</select>
帮助器要求select
包含元组option
,其中包含两者@select
属性以及呈现给用户的“标签”。换句话说,Seq
参数必须是(String, String)
。以下是示例given at the docs:
value
因此,您的options
需要包含Seq[(String, String)]
元组。但实际上解决这个问题非常简单,只需将代码更改为:
@select(
field = myForm("mySelect"),
options = Seq(
"Foo" -> "foo text",
"Bar" -> "bar text",
"Baz" -> "baz text"
),
'_default -> "Choose One",
'_disabled -> Seq("FooKey", "BazKey")
'cust_att_name -> "cust_att_value"
)
在这里,我认为aListOfDirectors
是(String, String)
。
播放documentation for (Java) forms表示“@select(
field = filmeForm("Director"),
options = aListOfDirectors.map(director => director.id.toString -> director.name)
)
包中有多个输入助手。”之后,我只是查看play scaladocs,然后导航到views.html.helper
包。在那里你可以找到docs for @select
。
我知道当人们说“阅读文档”时有时听起来很苛刻,但考虑到框架/软件/ lib开发人员(谁真的知道框架/软件/ lib),这是一个很好的建议)花时间解释如何使用框架/ software / lib,我们肯定可以花些时间阅读文档。