2013-03-02 61 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 

}