我们正在使用grails来开发一些Web应用程序 对于具有子类的Domain类,我想知道我们是否可以复制整个对象,包括属于Parent的所有子对象?
谢谢
答案 0 :(得分:1)
如评论中所述,您可以使用clone
方法扩展gorm。
然而,如果你不想搞乱gorm api,一个非常简单的解决方案是分离现有的对象并“重新”它。请注意,这不会执行deepClone
。
步骤:
代码示例,假设域类Region
具有唯一需要在保存之前更改的name
属性:
def copyRegion(Region region, String newName) {
region.id = null
region.name = newName
region.discard()
if (region.save()) {
// handle success
} else {
// handle error
}
}
另请参阅this question有关断开对象的信息。