Grails-从联接表中删除并删除hasMany对象

Grails-从联接表中删除并删除hasMany对象,grails,gorm,has-many,Grails,Gorm,Has Many,我有以下域类: class Shift { //etc } 及 当前在删除控制器操作中,我执行schedule.shifts.clear()和schedule.delete()。这将删除计划记录本身和ejoin表中的关联,但shift对象仍然存在。如何同时删除这些内容?解决了此问题: def shifts = schedules.shifts shifts*.delete() 必须提供back ref以启用级联删除: class Shift { static belongsTo

我有以下域类:

class Shift {
    //etc
}

当前在删除控制器操作中,我执行schedule.shifts.clear()和schedule.delete()。这将删除计划记录本身和ejoin表中的关联,但shift对象仍然存在。如何同时删除这些内容?

解决了此问题:

def shifts = schedules.shifts
shifts*.delete()

必须提供
back ref
以启用级联删除:

class Shift {
  static belongsTo = [ schedule:Schedule ]
}
然后,您应该能够执行
schedule.delete()
来删除shift实例

class Shift {
  static belongsTo = [ schedule:Schedule ]
}