Question

J'ai plusieurs à plusieurs.

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

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

Je voudrais obtenir une liste des postes pour une balise qui ont d'autres critères (comme un ordre de tri, match de titre partiel, etc.). Est-ce que je Vous à utiliser les critères Grails pour y parvenir? Ou est-il un moyen de faire quelque chose comme ceci:

Post.findAllByTitleLikeAndTagsContains("partial title", aTag)
Était-ce utile?

La solution

Je ne pense pas que trouveurs dynamiques vous permettra d'entrer dans un à plusieurs ou plusieurs à plusieurs associations - vous devez faire un critère ou suivre la voie de requête HQL. Vous ne pouvez interroger par un à une association, et non par un à plusieurs. (Voir la section 5.4 .1 Finders dynamiques )

Autres conseils

Vous pouvez utiliser withCriteria, par exemple:

Post.withCriteria{
    tags {
        eq 'id',aTag.id
    }
 }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top