grails hasOne vs hasMany行为

时间:2012-10-15 16:34:45

标签: grails gorm

在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>会自动创建一个连接表。

1 个答案:

答案 0 :(得分:1)

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

class MyDomainClass {

  List<AnotherDomainClass> others 

  static hasMany = [others:AnotherDomainClass]

}

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