通过子一对多关系Grails查找父母

时间:2017-09-06 10:31:40

标签: grails foreign-keys gorm

我有这个课程:

class Parent{
    static hasMany = [children:Child]
}

class Children{
    static belongsTo = [Parent]
}

我想做点什么

Parent.findByChildren(ChildInstance)

在数据库中有一个表格,其中包含关系ID,但我不知道如何访问它。

但这不起作用,这是正确的方法吗?

由于

2 个答案:

答案 0 :(得分:1)

更改您的Children类belongsTo子句:

class Children{
    static belongsTo = [parent: Parent]
}

这将允许您访问子级的父实例:childInstance.parent

答案 1 :(得分:0)

首先,我会将Children域中的关系更改为

static belongsTo = [parent: Parent]  // suggested by @bassmartin

Parent parent

两者都做同样的事情。

一旦你有了ChildInstance和对父母的引用,你就可以完成

ChildInstance.parent     // returns instance of parent

同样,如果你想找到父母的所有孩子,你可以做

parent.children          // return an array of children which you can iterate over.