Sigmaringer Straße 98
70567 Stuttgart

Editieren von Datensätzen im Backend-Modul

Verfasst von Daniel Simon im Bereich DigitalTechnologie am

16.10.2018

ERSTELLUNG EINES LINKS ZUR EDITIERANSICHT IM VIEWHELPER ODER CONTROLLER

Zum Editieren von Datensätzen im Backend-Modul wird in den TYPO3-Dokumentationen zu TYPO3 8 und zu TYPO3 9 im Abschnitt „Links to edit records“ im Moment noch beschrieben, dass auf das Skript alt_doc.php verlinkt werden soll. Dieses Skript gibt es aber ab der TYPO3-Version 8 nicht mehr. Etwas weiter unten im Text wird auf den EditLinkViewHelper aus der vom Documentation Team zur Verfügung gestellten Extension Examples verwiesen, also lud ich diese Extension aus dem TER herunter und schaute nach, ob der EditLinkViewHelper bereits auf TYPO3 8 upgedatet wurde. Tatsächlich findet die Datei alt_doc.php darin keine Erwähnung mehr und ich konnte den ViewHelper unverändert verwenden:

 

[javascript]
<ex:be.editlink table="tt_content" uid="{data.uid}" action="edit">
  Bearbeiten
</ex:be.editlink>
[/javascript]

 

Dabei kann als Action edit und new gewählt werden. Bei edit wird die Editieransicht des Datensatzes mit der angegebenen uid der gewählten Tabelle verlinkt, bei new wird ein neuer Datensatz der gewählten Tabelle auf der Seite mit der als Parameter uid gewählten pid beim Klick auf den erzeugten Link angelegt.

Möchte man im Controller eine Action erstellen, die die Editieransicht eines Datensatzes aufruft, kann man analog zum Code im EditLinkViewHelper vorgehen. Hier ein Beispiel, bei dem ein User seinen Backend-User-Datensatz bearbeiten kann:

 

[javascript]
/**
* action edit
*
* @return void
*/
public function editAction()
{
  $uidBeUser = $GLOBALS['BE_USER']-&gt;user['uid'];

  $urlParameters = [
    'edit' =&gt; [
      'be_users' =&gt; [
        $uidBeUser =&gt; 'edit'
      ]
    ],
    'columnsOnly' =&gt; '',
    'createExtension' =&gt; 0,
    'returnUrl' =&gt; GeneralUtility::getIndpEnv('REQUEST_URI')
  ];
  $uri = BackendUtility::getModuleUrl('record_edit', $urlParameters);

  header('Location:' . $uri);
}
[/javascript]

Kommen Sie mit uns in

Kontakt

Sudhaus7
Agentur für starke Kommunikation

Stuttgart
Tel +49 711.1842 02-80
Fax +49 711.1842 02-99
hallodontospamme@gowaway.sudhaus7.de
Sigmaringer Straße 98
70567 Stuttgart

Wien
Tel +43 720 882013
Schenkenstraße 2
1010 Wien

Bitte geben Sie hier die Buchstaben ein, die im Bild angezeigt werden. Dies dient der Spam-Abwehr.