我知道Grails有一个基于地图的构造函数,用于域对象,您可以将URL的参数传递到,并将适当的字段设置应用于对象,例如...

myDomainInstance = new MyObject(params)

我想知道是否有一种等效的方法来获取参数并将其应用于现有对象并以与地图构造器必须工作相同的方式更新值,例如...

myDomainInstance = params

或者

myDomainInstance = fromParams(params)

我只是一厢情愿还是存在这样的东西?我可以自己编码,但宁愿不存在。

谢谢

有帮助吗?

解决方案

改编自 Grails用户指南:

obj = MyObject.get(1)
obj.properties = params

请查看“参数”部分“参数”部分的文档,以获取更多信息。

其他提示

这实际上取决于您要做什么,但是使用数据指标的方法。

def sc = new SaveCommand()
bindData(sc, params)

这为您提供了使用自定义绑定的好处。如果说您的日期格式不是默认格式,则可以通过这样的bean重新定义它:

public class CustomPropertyEditorRegistrar implements PropertyEditorRegistrar {
  public void registerCustomEditors(PropertyEditorRegistry registry) {
      registry.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("dd/MM/yyyy"), true));
  }
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top