我想将一个孩子添加到两个不同的父类中,如下所示:
第一的:
class Member {
Profile profile
Member() {
this.profile = new Profile()
}
static mapping = {
profile cascade: 'all-delete-orphan'
}
}
第二:
class Team {
Profile profile
Team() {
this.profile = new Profile()
}
static mapping = {
profile cascade: 'all-delete-orphan'
}
}
Thw child 就是这样定义的
class Profile() {
}
问题是当我拯救父母时,它不会拯救孩子:
Member member = new Member().save(flush: true, failOnError: true)
assert !member.hasErrors()
assert member.profile
assert !member.profile.hasErrors()
assert member.profile.id //FAIL
我做错了什么?有更好的方法吗?
更新:
我找到了这个
这种行为似乎需要“属于”。但是为什么'级联:'all-delete-orphan'不强制这样做?因为在那种特定情况下我不能使用“属于”