Pergunta

Eu tenho muitos para muitos relacionamentos.

class Post {
    String title
    static hasMany = [tags:Tag]
}

class Tag {
    static hasMany = [posts:Post]
}

Gostaria de obter uma lista de postagens para uma tag que tenha outros critérios (como uma ordem de classificação, partida de título parcial etc.). Eu tenho usar os critérios do Graals para conseguir isso? Ou há alguma maneira de fazer algo assim:

Post.findAllByTitleLikeAndTagsContains("partial title", aTag)
Foi útil?

Solução

Não acho que os Dynamic Finders permitirão que você entre em muitas ou muitas para muitas associações - você precisa fazer um critério ou seguir a rota de consulta HQL. Você só pode consultar uma associação de um a uma, não de um a muitos. (Consulte a seção 5.4.1 Finders dinâmicos)

Outras dicas

Você pode usar o Withcriteria, por exemplo:

Post.withCriteria{
    tags {
        eq 'id',aTag.id
    }
 }
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top