我通過互聯網看,我沒有找到我的問題的答案。應該很容易:Grails按小孩查找父母
class Parent {
String name
Child child
}
當我有一個子對象時,如何獲取父對象? 像:
高清父= Parent.findByChild(子)
我如何能夠通過它的孩子得到一個父對象?
謝謝
我通過互聯網看,我沒有找到我的問題的答案。應該很容易:Grails按小孩查找父母
class Parent {
String name
Child child
}
當我有一個子對象時,如何獲取父對象? 像:
高清父= Parent.findByChild(子)
我如何能夠通過它的孩子得到一個父對象?
謝謝
你在哪裏看?
這些域類是什麼?如果是這樣,那麼你就可以通過的has_many和belongs_to的連接它們:
class Parent {
String name
List children
static has_many = [ children: Child ]
}
class Child {
static belongs_to = [ parent: Parent ]
}
然後,你可以只寫child.parent
def parent = Parent.findByChild(child)
工作正常 - 您可以使用動態查找的標量場(字符串,數字,布爾值,等等)和其他物體。
做反向並找到所有Child
情況下,對於一個給定Parent
是有點棘手,但可以用HQL來完成:
def p = Parent.get(id)
def children = Parent.executeQuery(
'select c from Child c, Parent p where p.child=c and p=:parent',
[parent: p])
我只有一個孩子,我想知道誰的母公司。所以像def Parent = Parent.findByChild(child)。父母只有一個孩子,並且是兩個領域類。我實際上需要一個「選擇」方法,通過發送一個孩子來獲得父母 –
忘記它,我迷惑了findBy。 所以我只是把這些代碼工作 孩童= .... 高清父= findByChild(子) 感謝您的關注凱文 –
這是更常見的是寫這些作爲的hasMany和屬於關聯 – doelleri