[TYPO3-german] extension_builder : Repository->add() schreibt cruser_id nicht

Christian Kirchhoff k-risc at gmx.net
Tue May 14 17:32:43 CEST 2013


Hallo,

ich arbeite mit Typo3 6.0.2 und dem extension_builder 2.5.2

Eine meiner Extensions enthält ein backendModul. Die DB-Inhalte, die damit verbunden sind, sind nicht fürs Frontend gedacht. Da zum Hinzufügen eines Datensatzes einige Feldwerte berechnet und im Hintergrund weitere Aktionen ausgeführt werden. Habe ich eine eigene Action createNew geschrieben.

Das Erzeugen eines neuen Datensatzes läuft über die Instanziierung eines Model-Objekts, setzen der Eigenschaften, und abschließendem Aufruf der add-Methode des Repositorys. Das funktioniert auch soweit ganz gut.

Allerdings werden zwar die Felder tstamp und crdate automatisch gesetzt, nicht aber das Feld cruser_id. Ich weiß nicht, ob das einen bestimmten Grund hat und so gewollt ist, mir scheint es eher ein Versäumnis zu sein. Wenn ich im Page Tree die List View aktiviere und dort testweise einen neuen Datensatz des entsprechenden Models anlege, dann wird die cruser_id geschrieben.

Frage 1: Muss ich für die Extension noch irgendwo irgendetwas setzen, damit die cruser_id beim Anlegen neuer Datensätze automatisch gesetzt wird? In ext_tables.php und ext_tables.sql ist das Feld enthalten.

Frage 2: Wenn ich das setzen selbst übernehmen muss, wie gehe ich da vor? Ich habe testweise in dem Model eine property cruserId definiert nebst Getter un Setter, und vor dem add() rufe ich Model->setCruserId(1) auf. Das wird aber nicht in die Datenbank geschrieben. Vielleicht muss ich noch etwas ins TCA schreiben?

Für jeden Tipp wäre ich dankbar.

Viele Grüße

Christian


More information about the TYPO3-german mailing list