Hallo,
ich sitze gerade an einem Backend-Modul, das es erlauben soll den gesamten Pagetree + Datensätze innerhalb einer Page als JSON-Datei zu exportieren, um diese dann in ein Javascript-Framework (AngularJS, React, etc.) einzubinden. Der Export klappt soweit, allerdings nur für die Standardsprache bzw. die Seiten werden in der jeweiligen Sprache richtig rausgeholt. Die Datensätze allerdings nicht.
Hier sind meine bisherigen Arbeitsschritte:
Erweiterung von pages
https://gist.github.com/anonymous/74440d247b5ea8ef768e
Page: Model & Repository
https://gist.github.com/anonymous/5528feaf3d6bfbd31e52
Customer: TCA, Model, Repository
https://gist.github.com/anonymous/5f9cb8183aa530497732
ExportController & ExportJsonView
https://gist.github.com/anonymous/8faebd63309e565d26c6
// Ausgabe für die Standardsprache ( uid = 0 // deutsch )
DebuggerUtility::var_dump( $this->pageRepository->findAll() );
VENDOR\MyExtension\Domain\Model\Page (prototype) (persistent entity) (uid=1, pid=0)
title => 'Startseite' (10 chars)
customer => TYPO3\CMS\Extbase\Persistence\Generic\LazyObjectStorage (prototype) (object) (1 items)
0000000027b06c810000000066a3f195 => VENDOR\MyExtension\Domain\Model\Customer (prototype) (persistent entity) (uid=1, pid=4)
name => 'Customer (DE)' (10 chars)
uid => 1 (integer)
_localizedUid => 1 (integer)modified
_languageUid => 0 (integer)modified
_versionedUid => 1 (integer)modified
pid => 4 (integer)
uid => 1 (integer)
_localizedUid => 1 (integer)modified
_languageUid => NULL
_versionedUid => 1 (integer)modified
pid => 0 (integer)
Wie gesagt, bis hierhin funktioniert der Export mit der Standardsprache tadellos. Aber sobald ich im PageRepository die languageUid mittels
$query->getQuerySettings()->setLanguageUid();
auf eine andere Sprache setze, die im Backend existiert, wird die Seite übersetzt, aber der Datensatz Customer ist weiterhin in der Standardsprache.
Mein Anliegen ist es nun, auch an den Datensatz für die jeweilige Sprache heranzukommen. Hier komme ich nicht weiter und würde gerne auf eure Erfahrung zurückgreifen.
Ich hoffe, dass ich euch alle Informationen zur Verfügung gestellt habe. Wenn nicht, dann einfach schreiben und ich reiche die fehlenden Informationen nach.
Grüße und einen schönen 1. Advent euch allen
Jens