2013-03-02 59 views
1

我想在Grails中编写一个查询来从域类返回一组结果,但是在那些返回一个单独类的相关结果中,它们具有主类的parentId。带多个对象的Grails GORM查询?

def query = Cars.where { 
     (colour == 'red') 
    } 

然后在每个列表项包括一组有关该CAR ID部分(为我想要达到一个例子,我知道代码是不正确虽然....

query.each{ 
      this car. add(Parts.whereCarID{it.id}) 
    } 
+1

使用条件查询 – 2013-03-02 19:50:12

回答

0

如果你正确地定义你的域模型,你应该得到它没有涉及到标准。 据我了解,你需要在你的零件类添加在您的汽车领域类static hasMany = [parts: Parts],并且static belongsTo = [car:Cars]

所以例如E,这里怎么可能看:

class Cars { 
    string colour 
    static hasMany = [parts:Parts] 
    // ... rest of your properties 
} 

class Parts { 
    static belongsTo = [car:Cars] 
    // ... rest of your properties 
} 

而且让你的结果只是这样做:

def cars = Cars.findAllByColour('red') 

然后,你可以这样做:

cars.each { car-> 
    println car.parts // <-- all the parts for each car is here 

}