我创建了Child
域名,并为其制作了2个父母。一个父母我宣称是一个领域。我在belongsTo
约束的帮助下宣布了另一位父母。
打包multipleparentsgrails
class Child {
Parent2 parent2
static belongsTo = [parent1: Parent1]
static constraints = {
}
}
这些方式之间有什么区别吗?
如何消除差异?我可以同时拥有belongTo
和会员吗?我可以添加有成员的级联吗?
答案 0 :(得分:2)
belongsTo在父母子女关系中扮演重要角色。这里在belongsTo中指定的类是关系的父/所有者。
以下可能是正常的一些比较,并且属于:
belongsTo将引用的类标记为关系的所有者,而has a
您不需要担心与hibernate相关的级联,因为关系会自动处理,即您可以指定级联类型但不需要提供实现,否则在has a
的情况下您必须使用GORM DSL喜欢的东西。
最后但并非最不重要的是,还要强制指定关系所有者,而has a
约束是障碍。
最后但并非最不重要的是,它也可能对gsp脚手架产生影响,但不确定。
希望它有帮助!
答案 1 :(得分:1)
是的,belongsTo定义了级联。如果删除parent1,那么child也是如此,因为它属于parent1。如果删除了parent2,Grails将不会自动为您删除子项。
所以,在这种情况下,说明一个孩子属于父母不会对儿童友好: - )
您可以通过几种不同的方式定义belongsTo,这允许您在单独的字段上定义或声明新字段。有关详细信息,请参阅Grails文档,它们有很好的使用示例。