Você quer retornar uma única propriedade, certo?
Se for isto, da uma olhada neste tópico: <!-- l --><a class="postlink-local" href="http://www.grailsbrasil.com/viewtopic.php?f=1&t=889">viewtopic.php?f=1&t=889</a><!-- l -->
Na verdade eu resolvi mas acho que um jeito feio:
def matches = WorldCupMatch.list(params)
for (m in matches) {
m.mybet = WorldCupMatch.getBet(m.id, authenticateService.userDomain().id)
}
Explicando: WorldCupMatch hasMany (bets:Bet). Quando eu retorno um jogo, se eu acessar a propriedade bets, eu retorno a lista inteira de apostas de TODOS usuários para aquele jogo. E na verdade, como estou logado, eu precisava retornar somente a aposta que EU fiz.
Ai criei uma propriedade mybet (transient) e criei esse metodo getBet() onde passo o jogo e o usuario. Faço o loop nos jogos e associo a propridade mybet somente o objeto Bet que pertence a mim, ou seja, somente a aposta que eu fiz.
Assim, na listagem dos jogos, eu posso mostrar abaixo a minha aposta para aquele jogo, se existir. Pelo menos resolvi tudo no controller né, não fiz nenhuma gambi na view.