Ich habe eine Funktion, um alle "Tours By Network" für heute zu bekommen.Bestellen Sie ein Ergebnis von seiner PersistentCollection
Ich habe eine benutzerdefinierte Repository wie folgt aus:
public function toursTodayByNetwork($network){
$todayStart = \DateTime::createFromFormat("Y-m-d H:i:s", date("Y-m-d 00:00:00"));
$todayEnd = \DateTime::createFromFormat("Y-m-d H:i:s", date("Y-m-d 23:59:59"));
return $this->getEntityManager()
->createQuery(
'SELECT p FROM AppBundle:Tour p JOIN AppBundle:Schedule s WHERE p.id = s.tour AND p.network = :network AND s.start >= :todayStart AND s.start <= :todayEnd'
)
->setParameter('todayStart',$todayStart)
->setParameter('todayEnd',$todayEnd)
->setParameter('network',$network)
->getResult();
}
Die Tour
Entity hat eine OneToMany
Bezug auf eine Object
Entity.
Ich würde jetzt gerne das Ganze durch die filiale
Spalte in AppBundle:Object
Spalte sortieren, die, wie Sie sehen können, nicht in der Abfrage ist, so kann ich nicht einfach einfach ORDER BY
.
Ich versuchte
/**
* @ORM\OneToMany(targetEntity="Object", mappedBy="tour")
* @ORM\OrderBy({"filiale" = "DESC"})
*/
protected $object;
Aber das ändert nichts.
THIS sieht aus wie etwas, was ich tun muss, aber ich verstehe nicht, wo den EventListener? Ich glaube auch, dass ich die Abfrage vielleicht nur ändern muss?
Die Annotation "@ORM \ OrderBy ({" filiale "=" DESC "})" bedeutet nur, dass es Ihre verwandten Objekte in dem Fall sortiert, wenn Sie $ tour-> getObjects(); – Alsatian