Ich muss eine alphabetisch sortierte Liste der Länder abrufen. Da ich die Entität in vier Sprachen übersetzt habe (Englisch, Französisch, Spanisch und Chinesisch), habe ich gedmo doctrine extensions um die Übersetzung zu verwalten. Das Problem ist, wenn ich diese Liste in einem Entitätsformularfeld Typ abholen:
%Vor% Die Ergebnisse sind sortiert nach Original-Entity-Definition (Englisch) und nicht nach Locale (Spanisch oder Französisch), was ich wirklich brauche. Eigentlich verwende ich $this->container->getParameter('locale')
Ich habe versucht, einen Haken in der Abfrage zu erzwingen, wie erklärt hier :
%Vor%aber AFAIK, das funktioniert nur, wenn die Abfrage als dql geschrieben wird:
%Vor%was von der Entität nicht erlaubt ist, weil es auf wartet queryBuilder-Objekt .
Also muss ich meine Sammlung in einer Form in seine aktuelle Sprache übersetzen lassen. Weiß jemand, wie das erreicht werden kann?
Ich hatte das gleiche Problem wie du. Ich weiß nicht, ob es eine bessere Lösung gibt, um das Problem zu lösen, aber es funktioniert für mich. Die Lösung überschreibt den Entitätsform-Typ.
forms.xml
%Vor%EntityType.php
%Vor%ORMQueryBuilderLoader.php
%Vor%Ich hoffe, es hilft.
Tags und Links symfony doctrine2 doctrine-query