Software & Infrastruktur

TYPO3 4.1 Feature „Inline Relational Record Editing“ kurz vorgestellt: Einfach irre!

Ab Version 4.1 besitzt TYPO3 mit „Inline Relational Record Editing“, kurz IRRE, erstmals ein Feature, um komplexe Datenstrukturen mit wiederkehrenden Unterelementen in einer Eingabemaske im TYPO3-Backend bearbeiten zu können. Neue Datensätze werden mithilfe von AJAX dynamisch integriert. Die persistente Datenspeicherung erfolgt dabei vorzugsweise per normalisiertem Datenmodell.

Bei einem Reiseportal sollen Hotels und deren Leistungen im Internet dargestellt werden und vom Kunden direkt gebucht werden können. Ein Hotel bietet beispielsweise diverse Erholungs- oder Wellness-Programme an, die wiederum einer unterschiedlichen Preisstruktur unterliegen, je nachdem, ob man zur Haupt- oder Nebensaison buchen möchte.

Dieses Szenario soll unser Einstieg in die Welt relationaler Daten sein. Die Objekte „Hotel“, „Programm“ und „Preis“ sind jeweils direkt voneinander abhängig: Ein Programm ist einem Hotel fest zugeordnet und könnte ohne dieses Elternobjekt nicht existieren (Komposition).

Irre?

Der bisherige Weg, die beschriebene Datenstruktur zu bewältigen – die sich immerhin über drei Ebenen erstreckt – war eher mühselig. So musste etwa das Hotel als Elternobjekt angelegt und auch gleich wieder abgespeichert werden, damit TYPO3 eine UID erzeugt, auf die Programme als Kindobjekte referenzieren können. Über selbst gestrickte Wizards, die diverse Popups öffnen, konnte die gewünschte Struktur zumindest einigermaßen komfortabel realisiert werden.

Die Extension „kb_tca_section“ von Bernhard Kraft und „dynaflex“ von Thomas Hempel brachten schon etwas mehr Komfort – so konnte die Struktur weitgehend in einer Ansicht bearbeitet werden. Für jeden neuen Kinddatensatz oder eine Änderung der Element-Sortierung war jedoch trotzdem das Abspeichern und Neuladen der kompletten Eingabemaske notwendig.

IRRE!

Inline Relational Record Editing (IRRE) setzt bei den vorher genannten Punkten an. Einem neuen, ungespeicherten Elternobjekt können sofort weitere Kindelemente hinzugefügt und bearbeitet werden. Vorhandene Elemente können vom Elternobjekt wieder entfernt oder per Drag & Drop sortiert werden. Die Anzahl der möglichen Hierarchieebenen ist nahezu unbeschränkt. Wenn alle Daten vollständig sind, wird die Datenstruktur per Klick auf Abspeichern in der Datenbank abgelegt. Das Hotel-Beispiel vom Anfang kann so auf einen Streich – vom Hotel, über die Programme, bis zu den Preisen – direkt eingegeben und administriert werden.

Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Schreib den ersten Kommentar!

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.