Zum Inhalt springen

TYPO3 7 Links ins Backend

Erstellt am 29. Dezember 2015 · 1 Antwort · letzte Antwort am 7. Januar 2016

Tags: Frage

aemka ·

Ich würde gerne bei Erstellung eines neuen Datensatzes im Frontend über Extbase dem Admin eine Mail schreiben, dass er einen Eintrag prüfen soll und dazu einen Link in die Mail packen, der direkt ins Backend zum Editieren dieses neuen und versteckten Datensatzes führt.

In TYPO3 6.2 ging das mit dem Linken ins Backend in etwa so:
https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ApiOverview/Backend/UriBuilder.html#edit-links

In TYPO3 7 gibt es ja nun ein neues Backend Routing und ich habe in meiner Extbase Controller Actions bisher das hier probiert, liefert als Ergebnis aber leider nur den String "{}":

$routingUriBuilder = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\CMS\Backend\Routing\UriBuilder');
$backendLink = $routingUriBuilder->buildUriFromRoute('record_edit', array('edit[tx_myextension_domain_model_record][' . $record->getUid() . ']' => 'edit'));

Herauskommen sollte aber so etwas wie:
http://www.domain.de/typo3/index.php?route=%2Frecord%2Fedit&token=8e67...7232&edit[tx_myextension_domain_model_record][123]=edit

froemken ·

Ich hab das auch noch nie gemacht, aber buildUri arbeitet mit implodeArrayForUrl(), was als 2ten Parameter ein MULTIdimensionales Array erwartet. Ich würd also nicht versuchen selbst mit den eckigen Klammern zu arbeiten, sondern mit:

array(
'edit' => array(
'tx_myextension_domain_model_record' => array(
$record->getUid() = 'edit'
)
)
)

als Parameter arbeiten.

Stefan