我如何获得特定类的集合?
我使用继承:On Planet live Human。人类正在分裂为男人和女人。
class Planet{
String name
static hasMany = [ humans : Human ]
}
class Human{
String name
static belongsTo = [Planet]
}
class Man extends Human{
int countOfCar
}
class Woman extends Human{
int coutOfChildren
}
现在只需要获取男人收藏或女人收藏:
让地球上的所有人类变得简单
all = Planet.get(1).humans
但是我只能得到女人或男人?
womenLivedOnMars = Planet.get(1)。 getOnlyWoman
menLivedOnJupiter = Planet.get(2)。 getOnlyMan
感谢您的帮助 汤姆
答案 0 :(得分:2)
一个简单的选择可能是:
Man.findAllByPlanet(Planet.get(1))
答案 1 :(得分:2)
据我所知,你可以这样做:
class Human{
String name
static belongsTo = [planet: Planet]
}
womanLivedOnMars = Woman.findAllByPlanet(Planet.findByName('Mars'))
menLivedOnJupiter = Men.withCriteria {
planet {
eq('name','Mars')
}
}