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

时间:2015-06-30 15:35:31

标签: grails gorm has-many

我有以下域类:

class Shift {
    //etc
}

class Schedule{
    //etc
    static hasMany = [shifts:Shift]
    //etc
}

目前在删除控制器操作中,我执行schedule.shifts.c​​lear(),然后执行schedule.delete()。这将删除计划记录本身和ejoin表中的关联,但仍然存在转换对象。如何同时删除这些?

2 个答案:

答案 0 :(得分:0)

解决了这个问题:

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

答案 1 :(得分:0)

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

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

然后您应该能够schedule.delete()删除shift-instances