我会告诉你我做什么,这可能是也可能不是最好的选择。我这样做主要是因为我不喜欢数据绑定。
以您的情况为例,我将命名我的字段:“cm.firstName, cm.lastName, cm.address, cm.email, cm.userId”。
如果您在服务中:
GrailsWebRequest webUtils = WebUtils.retrieveGrailsWebRequest()
List committeeMembers = [].withDefault {new GrailsParameterMap([:], webUtils.getCurrentRequest())}
在控制器中:
List committeeMembers = [].withDefault {new GrailsParameterMap([:], request)}
然后
params.cm.each { k, v ->
if (v instanceof String[]) {
v.eachWithIndex { val, idx ->
committeeMembers[idx]."$k" = val
}
}
else {
committeeMembers[0]."$k" = v
}
}
然后你可以这样做:
committeeMembers.each {
<Create from it.firstName, it.lastName, etc>
}