Tri sur un sous ensemble dans une requête
Bonjour,
Je fais une requête pour obtenir un "Client" qui contient des interventions. Je dois récupérer le client demandé et trier toutes ses interventions par leur nom :
Code:
1 2 3 4 5 6 7 8 9
|
public function oneClientSortedByInterventionNames($idClient) {
return $this->createQueryBuilder('c')
->where('c.id = :idClient')
->setParameter('idClient', $idClient)
->orderBy('c.interventions', 'ASC')
->getQuery()
->getResult();
} |
Dans l'entité "Client" j'ai un attribut "interventions" qui est une relation @ManyToMany comme cela :
Code:
1 2 3 4 5
|
/**
* @ORM\ManyToMany(targetEntity="Sdz\ReportBundle\Entity\Intervention", mappedBy="clients", cascade={"persist", "remove", "merge"})
**/
private $interventions; |
Avec cette requête j'obtiens le message d'erreur suivant :
Citation:
[Semantical Error] line 0, col 81 near 'interventions': Error: Invalid PathExpression. StateFieldPathExpression or SingleValuedAssociationField expected.
500 Internal Server Error - QueryException
1 linked Exception:
... et la trace de la requête est la suivante :
Citation:
[1/2] QueryException: SELECT c FROM Sdz\ReportBundle\Entity\Client c WHERE c.id = :idClient ORDER BY c.interventions ASC
Cela fait de très nombreuses heures que je cherche à faire cette requête mais en vain. :aie:
Pouvez-vous m'indiquer comment cela peut être fait ?
Merci beaucoup.
A+ ;)