Grails 删除的对象将以多对多关系重新保存

Grails 删除的对象将以多对多关系重新保存,grails,gorm,Grails,Gorm,我正在使用设置多对多关系。当我进行Membership.unlink(employee,team)调用时,m.delete会导致“已删除的对象将通过级联重新保存”错误,我似乎无法回避这个问题。当您删除链接到hasMany关系的实例时,您还必须从“多”端删除该对象。例如: employee.removeFromTeam(team) employee.delete(flush: true) 在您的示例中,您可能有一个成员资格类,该类包含一个团队和一个员工关系。在这种情况下,您需要执行以下操作: m

我正在使用设置多对多关系。当我进行Membership.unlink(employee,team)调用时,m.delete会导致“已删除的对象将通过级联重新保存”错误,我似乎无法回避这个问题。

当您删除链接到
hasMany
关系的实例时,您还必须从“多”端删除该对象。例如:

employee.removeFromTeam(team)
employee.delete(flush: true)
在您的示例中,您可能有一个
成员资格
类,该类包含一个
团队
和一个
员工
关系。在这种情况下,您需要执行以下操作:

membership.removeFromTeam(team)
membership.removeFromEmployee(employee)
membership.delete(flush: true)

这篇链接文章与grails的1.0.3版相关(顺便说一句,它已经有五年历史了)。这真的是你正在使用的版本吗?如果没有,请看一看关于GORM的(2.4.x版)-也许这正好回答了你的问题。谢谢你的指点