[TYPO3-german] Extbase Sortierung zieht nicht

g4-lisz at tonarchiv.ch g4-lisz at tonarchiv.ch
Mon Jul 6 18:02:29 CEST 2015


Hi Johannes,

dafür gibt es leider bis heute keine einheitliche Lösung für die
Sortierung bei Object-Strrages.
Das Sortieren nach Uid geschieht auch eher zufällig, bzw. hängt von der
DB-Engine ab und in welcher Reihenfolge sie die Zeilen zurück liefert...

Entweder sortierst Du die Objekte mit einer entsprechenden PHP-Funktion
oder Du schreibst eine eigene eigene find-Methode im entsprechenden
Repository, die im Getter des referenzierenden Objekts aufgerufen wird.
Beides unschön, aber eine andere Lösung habe ich bisher nicht gefunden.
Bei letzterer Variante musst Du toArray() auf das Resultat der
find-Methode anwenden, da der Getter sonst einen falschen Typen zurück
liefert.

Also so was:

public function getChildren() {

    $children = $this->childRepository->findByMother($this);
    return $children->toArray();
}

Grüße,
Till

On 07/06/2015 10:29 AM, Johannes C. Schulz wrote:
> Hallo TYPO3-Freunde
>
>  
>
> Ich habe eine Extension wo ich gerne Unterobjekte nicht nach „uid“ sondern
> nach dem Integer-Feld „accid“ sortieren lassen würde – sowohl im Frontend
> als auch im Backend.
>
> Doch der Eintrag:
>
>  
>
> /**
>
> * The repository for Types
>
> */
>
> class PersonRepository extends \TYPO3\CMS\Extbase\Persistence\Repository {
>
>     /**
>
>      *
>
>      * define the default ordering of the persons
>
>      */
>
>     protected $defaultOrderings = array( 'accid' =>
> \TYPO3\CMS\Extbase\Persistence\QueryInterface::ORDER_ASCENDING );
>
> }
>
>  
>
> im entsprechenden Kind-Objekt-Repository hat keine Wirkung. Das Kind-Objekt
> ist ein ObjectStorage.
>
>  
>
> Wir kann ich in Front- und Backend die Sortierung definieren?
>
>  
>
> Typo3 6.2.12.
>
>  
>
> Johannes
>
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german



More information about the TYPO3-german mailing list