Comment effectuer une requête de jointure à l'aide de Symfony et Doctrine Query Builder
J'ai deux entités sont reliées par une relation 1:1, e.g: MyEntity.idRelatedEntity
Je veux créer une Doctrine query où je peux récupérer des données à partir MyEntity
en fonction d'une valeur à partir d'une certaine colonne dans RelatedEntity
. Quelque chose comme ceci (il ne fonctionne pas bien sûr):
$entity = $em
->getRepository('MyBundle:RelatedEntity')
->createQueryBuilder('e')
->leftJoin('MyBundle:RelatedEntity', 'r')
->where('r.foo = 1')
->getQuery()
->getResult();
Toute aide serait grandement appréciée 🙂
Où en êtes-vous l'écriture de cette requête ? Il pourrait m'aider à répondre à votre question ET à améliorer votre code. c'est que dans le
MyEntityRepository
?OriginalL'auteur viarnes | 2013-08-21
Vous devez vous connecter pour publier un commentaire.
Également une jointure gauche n'a pas de sens ici (en raison de la clause where qui le font fonctionner comme jointure interne (inner join)
->join('e.idRelatedEntity', 'r')
OriginalL'auteur Uriziel
Notez que vous devez écrire cette requête dans votre
MyEntityRepository
Et ensuite l'utiliser dans votre contrôleur/service :
OriginalL'auteur sf_tristanb