【发布时间】:2013-07-02 20:19:22
【问题描述】:
如果我有一个带有字符串字段 someField 的命令对象 SomeClassCommand 但想从参数 params.otherField 绑定数据,我该怎么做?我可以在命令对象中添加注释吗?
【问题讨论】:
-
简而言之 - 你不能。手动分配
如果我有一个带有字符串字段 someField 的命令对象 SomeClassCommand 但想从参数 params.otherField 绑定数据,我该怎么做?我可以在命令对象中添加注释吗?
【问题讨论】:
实际上,在您的案例中,有一个可怕的工作违背了自动绑定的目的。
def map = [:]
map.someField = params.otherField
//plus set all the other params to map
map << params
def commandObj = new SomeCommandObj()
//Explicitly bind map to command object
bindData(commandObj, map)
这真的很可怕,因为你做额外的工作只是为了绑定数据。您可以直接将值设置为命令对象。
我建议要么更改命令对象字段名称,要么更改参数字段名称,这都是可控的。 AFAIK 没有可用的注释,除非您有自己的实用程序来执行此操作。
【讨论】: