Grails有很多删除行为

时间:2015-03-31 21:05:52

标签: grails gorm cascade

我有2个域类

class A {
   static hasMany = [ b : B ]
}

class B {
   static belongsTo = A
}

我想保留级联保存,所以当我保存A时,它会更新B,但是当我删除A时,如果存在任何与A相关的B,我希望它失败。所以你必须先明确地删除所有的B。

我不确定在Grails中执行此操作的最简单方法。在删除之前我可以检查A以确认没有B - 足够简单。但有没有办法通过级联或关系行为来控制这个,所以我不必把逻辑放在那里?

1 个答案:

答案 0 :(得分:1)

指定集合的​​级联行为

class A {
   static hasMany = [ b : B ]

   static mapping = {
        b cascade: 'save-update'
    }
}

它将级联保存和更新,但不会删除。