2

在 grails 中,当指定单向的一对一关系时,我可以这样做

class MyDomainClass {
   AnotherDomainClass another
}

或者

class MyDomainClass {
   static hasOne = [another:AnotherDomainClass]
}

我知道语义不同,但任何一种方式都会建立这种关系。

创建 hasMany 关系时,我可以这样做:

class MyDomainClass {
  static hasMany = [others:AnotherDomainClass]
}

但我似乎做不到:

class MyDomainClass {
  List<AnotherDomainClass> others 
}

编辑:澄清。我想仍然有 hasMany 关系,我只是想知道是否可以通过声明List<AnotherDomainClass> others没有hasMany变量来做到这一点。我希望只是声明List<AnotherDomainClass>会自动创建一个连接表。

4

1 回答 1

1

是的,你可以做到。只需声明两者。

class MyDomainClass {

  List<AnotherDomainClass> others 

  static hasMany = [others:AnotherDomainClass]

}

当您不声明该字段时,Grails 会自动为您创建一个Set

于 2012-10-15T16:52:29.020 回答