我有一个如下所示的播放模板:
@(projects: List[Project], projectForm: Form[Project])
@import helper._
@main("Create projects") {
<div class="accordion">
@for(project <- projects) {
<h3>@project.name</h3>
<div>
@form(routes.Application.updateProject(project.getId), 'class -> "ajaxForm") {
@* I'm not even sure why I need to specify the FQN of Map here *@
@defining(projectForm.bind(scala.collection.mutable.Map( "name" -> project.name,
"description" -> project.description))) { form =>
@inputText(form("name"))
@textarea(form("description"))
<input type="submit" value="Update"/>
}
}
</div>
}
</div>
@form(routes.Application.createProject()) {
<fieldset>
<legend>Create a new project</legend>
@inputText(projectForm("name"))
@textarea(projectForm("description"))
<input value="create" type="submit"/>
</fieldset>
}
}
Project
是一个包含 along id
和 aString name
和的模型description
。
我的问题是这里
@inputText(form("name"), 'value -> project.name)
@textarea(form("description"))
inputText 和 textarea 总是分别获得 idname
和description
。我有很多这样的,所以这些 id 不再是唯一的。这仍然适用于 chrome,但我知道 id 在文档中必须是唯一的。Play 中是否有一些内置的方法来处理这类问题,还是我必须想出一个自己的解决方案?如果是后者,您对如何解决这个问题有什么建议吗?还是我做错了什么?