在归档过程中,我将详细信息从现有域对象复制到该域的新实例。两个域对象都具有hasMany关系:
static hasMany = [pets:Pet]
当我遇到以下情况时:
def ownerOne = (logic to find owner)
def ownerTwo = new Owner
****ownerTwo.pets = ownerOne.pets****
我该怎么做星号线?我已经厌倦了这个:
Set<Pet> ownerTwoPets = new TreeSet<Pet>()
for(Pet p : ownerOne.pets) {
ownerTwoPets.add(p)
}
ownerTwo.pets = ownerTwoPets
没有运气。我可以在hasMany中使用String对象来解决这个问题。但我无法用hasMany
中的域对象来解决这个问题答案 0 :(得分:2)
Grails有一种内置方法可以添加到像这样的关系中。试试这个:
ownerOne.pets.each { Pet p ->
ownerTwo.addToPets(p)
}