Dodanie sortowania w SQL-u jest trywialnie proste, wystarczy klauzula ORDER BY i koniec, ale jak uzyskać ten sam efekt przy zastosowaniu relacji OneToMany ( jeden do wielu ) w encji Doctrin-a ??
Rozwiązanie jest trywialnie proste. Musimy mieć zaimportowaną odpowiednią przestrzeń nazw.
use Doctrine\ORM\Mapping as ORM;
A następnie dodajemy adnotację OrderBy. Jak w przykładzie poniżej.
/**
* @ORM\OneToMany(targetEntity="App\Entity\Player", mappedBy="club")
* @ORM\OrderBy({"fullName" = "ASC"})
*/
private $players;
Gdzie w OrderBy przebazujemy obiekt, który jako klucz przyjmuje nazwę kolumny, a rodzaj sortowania jako wartość. Prototym można by było zapisać jako:
@ORM\OrderBy({"nazwa_pola_encji" = "ASC|DESC"})