Bonjour à tous,
J'ai une relation ManyToMany entre une classe Gens et Bagnole.
Je suis aujourd'hui capable de retourner des lignes de Gens, ayant chacun une collection de Bagnole, et inversement.
Ce que je souhaite est un peu particulier : je souhaite en utilisant le QueryBuilder retourner autant de lignes que de combinaisons Gens-Bagnole.
Exemple :
Albert possède une Fiat, et une Volvo. Bruno possède une Fiat, et une Opel.
Aujourd'hui, la logique veut que si je fais un findAll sur ma classe Gens je me retrouve avec 2 résultats :
Albert possède une collection de voitures (Fiat, Volvo)
Bruno possède une collection de voitures (Fiat, Opel).
Ce que je veux maintenant c'est tout le contraire de ce que je passe mon temps à dire à tout le monde : "ne plus (vraiment) penser objet".
Je veux que mon QueryBuilder me retourne quelque chose qui va à l'encontre de ça c'est à dire 4 résultats (et non 2) :
Albert possède une Fiat
Albert possède une Volvo
Bruno possède une Fiat
Bruno possède une Opel
En réalité, si c'est possible, pour que ça matche avec avec ma classe, je présume qu'il s'agira en fait à chaque fois d'une collection de une seule bagnole, mais ça me va.
Je précise un dernier point, ce résultat doit m'être retourné par un QueryBuilder et non trafiqué à la mano après un résultat normal.
Est-ce que Doctrine permet ça d'une manière ou d'une autre (ou existe-t-il un moyen futé de tricher via des groupBy, des distinct ... j'ai fais quelques tentatives sans succès) ? Je n'y crois guère mais je jète quand même une bouteille à la mer.
Merci ! ++
Partager