Grails按子对象查找父对象

Grails按子对象查找父对象,grails,Grails,我在网上查了一下,还没有找到我问题的答案。应该很容易: class Parent { String name Child child } 当我有一个子对象时,如何通过它获得父对象? 比如: def Parent=Parent.findByChild(子) 如何通过子对象获取父对象 谢谢你到哪里去看了 这些是域类吗?如果是这样,那么您可以通过has_many和own_连接它们: class Parent { String name List children st

我在网上查了一下,还没有找到我问题的答案。应该很容易:

class Parent {
  String name
  Child child
}
当我有一个子对象时,如何通过它获得父对象? 比如:

def Parent=Parent.findByChild(子)

如何通过子对象获取父对象


谢谢你到哪里去看了

这些是域类吗?如果是这样,那么您可以通过has_many和own_连接它们:

class Parent {
    String name
    List children
    static has_many = [ children: Child ]
}

class Child {
   static belongs_to = [ parent: Parent ]
}

然后你就可以写
child.parent

你在哪里看过

这些是域类吗?如果是这样,那么您可以通过has_many和own_连接它们:

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)
即可-您可以对标量字段(字符串、数字、布尔值等)和其他对象使用动态查找器

执行反向操作并查找给定父级的所有
子级
实例稍微复杂一些,但可以使用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)
工作正常-您可以对标量字段(字符串、数字、布尔值等)和其他对象使用动态查找器

执行反向操作并查找给定父级的所有
子级
实例稍微复杂一些,但可以使用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)。父类只有一个子类,是的,它的两个域类都有。实际上,我需要一个“select”方法,通过发送一个childs来获取父对象。算了吧,我打错了findBy。所以我刚才写的代码是Child=。。。。def parent=findByChild(child)谢谢你的关注,Kevin写这些比较常见,因为我只有孩子,我想知道谁的父母。比如def Parent=Parent.findByChild(child)。父类只有一个子类,是的,它的两个域类都有。实际上,我需要一个“select”方法,通过发送一个childs来获取父对象。算了吧,我打错了findBy。所以我刚才写的代码是Child=。。。。def parent=findByChild(child)感谢您的关注,Kevin写这些内容比较常见,因为它们有很多和下面的内容