Grails withCriteria两级深度关联

Grails withCriteria两级深度关联,grails,gorm,Grails,Gorm,我想加载一个结构,在一个关联链的两层深处。大致如下: class TopLevel { String name LevelOne levelOne } class LevelOne { String name LevelTwo levelTwo } class LevelTwo { String name } 我想把整个结构都装上。四处搜索,我找到了这个例子,但它不起作用。“println”生成了对LevelTwo表的查询 def res


我想加载一个结构,在一个关联链的两层深处。大致如下:

class TopLevel {
    String name

    LevelOne levelOne
}    

class LevelOne {
    String name

    LevelTwo levelTwo
}

class LevelTwo {
    String name
}
我想把整个结构都装上。四处搜索,我找到了这个例子,但它不起作用。“println”生成了对LevelTwo表的查询

def result = TopLevel.withCriteria {
    eq('name', 'test')
    fetchMode "levelOne", FetchMode.JOIN
    levelOne {
        fetchMode "levelTwo", FetchMode.JOIN
    }
}

println result.levelOne.levelTwo.name
谢谢你的帮助

-史蒂夫让它工作起来了。这是秘方:

def result = TopLevel.withCriteria {
    eq('name', 'test')
    fetchMode 'levelOne', FetchMode.JOIN
    fetchMode 'levelOne.levelTwo', FetchMode.JOIN
    fetchMode 'levelOne.levelTwo.levelThree', FetchMode.JOIN
}