在Struts和JSF中,我们将表单链接到bean(例如JSF中的支持bean)。
但是在grails中,我们使用params
来设置bean的值。有没有其他方法可以自动将表单映射到bean?
答案 0 :(得分:1)
Grails可以将params映射中的值自动绑定到给定的域实例/命令对象。这可以通过将正确的bean定义为控制器方法的参数来实现。举个例子:
控制器:
class AuthorController {
def save(Author author) {
// matching param values are bound to the author instance
assert params.name == "myName"
assert author.name == "myName"
}
}
gsp with form:
<g:form controller="author" action="save">
<g:field name="name" value="myName" />
<g:submitButton name="save" value="Save" />
</g:form>
答案 1 :(得分:0)
有时最好使用Grails提供的命令对象,域类只能与表单字段的名称和类的属性名称匹配。 但Command Objects可以提供验证和抽象的中间层来生成模型bean。
http://grails.org/doc/2.3.0/guide/single.html#commandObjects