2008-12-28 145 views
2

我有Grails域类Child and Toy。一个孩子可以有很多玩具。在Grails中,需要为一对多关系定义一个Set?

class Child { 
    static hasMany = [ toys : Toy ] 
    String name 
} 

class Toy { 
    static belongsTo = [ owner : Child ] 
    String name 
} 

这是我的理解,将有一个儿童玩具财产。也就是说,会有Child方法:

public Set getToys() 

但这不起作用。我无法从Java类引用child.getToys()。我已经在儿童中明确定义玩具:

class Child { 
    static hasMany = [ toys : Toy ] 
    String name 
    Set toys 
} 

这是正确的吗?我是否需要为一对多关系明确定义一个Set?

回答

3

是的,如果你想从Java引用它,你必须明确定义属性。这与groovy编译器(groovyc)为groovy bean创建存根类的方式有关。

+0

在[email protected]上查看我的帖子。这个说法已经在Grails 1.1中得到了修复。 http://www.nabble.com/Define-Set-for-one-to-many-relationship--td21195999.html – 2008-12-28 23:26:45

相关问题