我有一个像这样的自引用域类:
class Person {
String name
Person father
Person mother
}
我对父亲或母亲没有任何限制或其他限制
我有一个服务,可以从.csv文件中插入新条目,如下所示
Person father = Person.findBy(newPersonFatherName)
Person mother = Person.findBy(newPersonMotherName)
Person newPerson = new Person(
name: newPersonName,
father: father,
mother: mother)
newPerson.save()
执行此操作时会发生的事情是外祖母和外祖父与newPerson的情况相同。
我可以通过在save()
之前插入以下两行来消除这种情况Person pgf = father.father
Person pgm = father.mother
Person mgf = mother.father
Person mgm = mother.mother
我想整个事情都与级联保存有关,但我无法真正理解这个问题,而且我不愿意在代码中留下这么难理解的解决方案。
有人可以帮忙吗?提前谢谢!
答案 0 :(得分:0)
似乎这个问题在Grails 2.5.5和Grails 3.3之间已经消失了,所以我要将其标记为已回答并解决。