假设Owned
域类通过在其主体中具有以下声明而属于Owner
域类:
static belongsTo [ Owner ]
为什么然后在某些情况下,我仍然看到
Owned
域类也具有属性或字段,例如对Owner
域类的引用Owner owner
尽管在其主体中具有belongsTo子句?在这种情况下,
belongsTo
声明不会处理所需的引用吗?
最佳答案
的结合
static belongsTo = [ Owner ]
和
Owner owner
基本上与
static belongsTo = [owner: Owner ]
因为使用 map 表单触发器(通过AST转换)会创建名称为
Owner
的owner
类型的属性。我的首选是使用单个语句,因为这是声明双向一对多的标准方法,而另一种方法感觉像是副作用。
使用
belongsTo
的简单形式并声明owner属性的一个原因是,当您有多个父域类时,有些是双向的,而有些则不是,例如static belongsTo = [Owner, OtherClass]
Owner owner
这样,您就可以使
Owner
/ Owned
为双向,但保持OtherClass
关系为单向。
关于grails - Grails关系引用,尽管具有belongsTo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29157266/