我想问一下我的项目。 我有两个像这样的域
答案 0 :(得分:1)
我建议你查看GORM documentation。您可以通过某些方式声明类之间的关系,并且根据它们的不同,删除将是级联的。
"6.3.3 Understanding Cascading Updates and Deletes" 中解释了此行为。
是一对一,一对多还是多对多,定义 belongsTo将导致从拥有类级联到更新 它的依赖(关系的另一面),以及 许多/一对一和一对多关系也将被删除 级联。
因此,您应该考虑声明hasMany
和belongsTo
,以启用级联删除。
答案 1 :(得分:1)
class User {
// Group details should not be referenced here
}
class Group {
String Name
String Description
GroupDetails gd
}
class GroupDetails {
User user
static belongsTo = [group:Group]
}
在这种情况下,如果Group
有一个孩子GroupDetails
,那么当您删除Group
时,子实体也会被删除。
查看grails docs中的第一个示例:http://grails.org/doc/2.2.x/ref/Domain%20Classes/belongsTo.html
同样,SérgioMichels还有更多方法可以让它发挥作用。
示例:https://github.com/aprudnikovas/testGrailsOneToOneCascade