I'd like to eager load a structure, two levels deep in an association chain. Something along the lines of:
class TopLevel {
String name
LevelOne levelOne
}
class LevelOne {
String name
LevelTwo levelTwo
}
class LevelTwo {
String name
}
I'd like to load the entire structure. Searching around I found this example, but it didn't work. The "println" generated a query to the LevelTwo table.
def result = TopLevel.withCriteria {
eq('name', 'test')
fetchMode "levelOne", FetchMode.JOIN
levelOne {
fetchMode "levelTwo", FetchMode.JOIN
}
}
println result.levelOne.levelTwo.name
Appreciate any help!
- Steve
Got it working. Here's the secret sauce:
def result = TopLevel.withCriteria {
eq('name', 'test')
fetchMode 'levelOne', FetchMode.JOIN
fetchMode 'levelOne.levelTwo', FetchMode.JOIN
fetchMode 'levelOne.levelTwo.levelThree', FetchMode.JOIN
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With