TYPO3 Extbase – Objekte kopieren
Im Frontend eigene Extbase Objekte zu kopieren kann sehr mühsam werden. Auch der Cloning Service der FED Extension schafft keine Abhilfe. Entweder werden File-Referenzen oder Childobjekte nicht korrekt kopiert. Mit folgender Serviceklasse könnt Ihr euch einen Backenduser simulieren und somit den “\TYPO3\CMS\Core\DataHandling\DataHandler” von TYPO3 nutzen um einwandfreie kopien ohne Einschränkungen eurer Objekte zu erstellen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
/** * @param \VENDOR\Extname\Domain\Model\Page $page * @return void */ public function copyAction(\VENDOR\Extname\Domain\Model\Page $page) { /** * @var \VENDOR\Extname\Service\DataHandler $dataHandler */ $dataHandler = $this->objectManager->get('VENDOR\\Extname\\Service\\DataHandler'); $newUid = $dataHandler->copyRecord($page); // über $overrideValues könnt ihr direkt den Titel des kopierten Datensatzes anpassen. $this->redirect('list'); } |
Und […]