[TYPO3-german] Extbase Sortierung zieht nicht

Renzo Bauen typo3 at conpassione.ch
Tue Jul 7 09:21:19 CEST 2015


Lieber Johannes

könnte es sein, dass Du die Namespaces nicht richtig angegeben hast?
Wenn Du den Namespace nicht angibst, dann findet er das Repository nicht
und kann es auch nicht injecten... 

Ich verwende im Controller sowas:
    /**
     * personRepository
     *
     * @var \EnzephaloN\Accreditation\Domain\Repository\PersonRepository
     * @inject
     */
    protected $personRepository;

Und dann kann ich damit arbeiten....

Was ich auch überprüfen würde ist, ob Du die Deklarationen deiner
Variablen wirklich korrekt machst.
Bei dem "@return \TYPO3\CMS\Extbase\Persistence\ObjectStorage<
\EnzephaloN\Accreditation\Domain\Model\Person> $persons" bin ich nicht
sicher, ob Extbase das richtig interpretiert. 
Wenn ich eine Model zurückgeben will, deklariere ich es normal so:
"@return \EnzephaloN\Accreditation\Domain\Model\Person $person", dass
dies eine von einem Default-Typ abgeleitete Variable ist, merkt Extbase
dann von selber. Vielleicht ist das Problem auch die Einzahl oder
Mehrzahl! Gibt die Funktion nur eine Person zurück oder sind es
mehrerer? Als Typ gibst Du eine an, schreibst dann aber die Variable in
der Mehrzahl.... Deshalb braucht es dann ev. die Umwandlung mit toArray,
denn normalerweise kann Extbase mit den Objekten arbeiten und braucht
keine Typ-Umwandlung zu einem Array. Das brauche ich jeweils nur, wenn
ich mit den Daten noch irgendwas verrücktes anstellen will, was von
Extbase so nicht vorgesehen ist.
Die Zuweisung zu einer View kann direkt geschehen mit
$this->view->assign('persons', $persons)

Vielleicht hilft der eine oder andere Hinweis ja. Zuviele Umwandlungen
machen Extbase auch langsam....
Beste Grüsse, Renzo
-- 
conPassione gmbh
CH-3661 Uetendorf
+41 33 345 00 92 




More information about the TYPO3-german mailing list