我试图从一个有很多关系中删除一个对象。用户有一个对象叫来宾,来宾有一个有很多叫孩子的对象,见下图:
class User {
transient springSecurityService
String username
String password
String email
boolean enabled
boolean accountExpired
boolean accountLocked
boolean passwordExpired
Guest guest
}
客人:
class Guest {
static hasMany = [children:Child]
static constraints = {
}
}
我使用以下内容添加孩子:
User.guest.addToChildren(Child.get(params.id))
这工作得很好。但是,我不能执行以下操作:
User.guest.removeFromChildren(Child.get(params.id))
我也试过
Guest guest = User.guest
guest.removeFromChildren(Child.get(params.id))
guest.save(flush: true, failOnError: true)
没有成功。我还进行了适当的检查以确保子实例包含在来宾中并且匹配
Child.get(params.id)
有任何想法吗?