[TYPO3-german] Extension - Daten aus Flexform in der DB auf Datenfelder im Model übertragen

Dr. Dieter Porth typo3 at mobger.de
Sun Jul 24 19:31:22 CEST 2016


Hallo Rene,

Nach deinem Problem mit Extension Architektur schreibst du "Funktioniert 
auch alles." Wenn alles Funktionieren würde, hättest du kein Problem. 
Was funktioniert. Was ist nicht getestet? Was möchtest du erreichen?

Am 24.07.2016 um 15:39 schrieb Rene:
> Die Setter werden allerdings beim Ausführen des Querys nicht aufgerufen,
> wodurch folgende Funktion im Model nicht funktioniert
> public function setNceConfig($nceConfig) {
>     $configTemp =
> \TYPO3\CMS\Core\Utility\GeneralUtility::xml2array($nceConfig);
>     $this->nceStart = getFlexValue($configTemp, 'start'); 
a) Hast du xdebug zur Analyse benutzt? Nein = Fehler! Ja = Wo zweigt 
TYPO3 'falsch' ab?!
b) Wenn die Funktion nicht aufgerufen wird, dann läuft vermutlich schon 
vorher was schief. Vielleicht stimmt der übergebene Typ nicht?
c) Warum "$this->nceStart = getFlexValue($configTemp, 'start');"? Wenn 
ich die Dokumentation zur Funktion xml2array richtig lese, dann sollte  
$this->nceStart = $configTemp['start']; funktionieren?

Nachfrage:
Wenn du im Kontroller für ein fluidtemplate der Variable 'John' einen 
assoziativen Array mit dem Feld "Doe" übergibst, dann steht dir im 
Fluidtemplate den Wert des Assoziativen Arrays per {John.Doe}  zur 
Verfügung. Ich frage mich: Wofür braucht dein XML noch ein Model?
Mit besten Grüßen
     Dieter


> Sorry, wenn ich falsch liege und mein Vorhaben nicht möglich ist. Gibt
> es dann eventuell eine alternative Methode 

Statt einer komplizierte XML-Flexform als Datenbank-Ersatz hätte ich 
wahrscheinlich einfach eine Model mit den Optionen als Einzelfelder 
konstruiert und in der tt_content per TCA über eine 1:1-Relation das 
Model mit dem Tabellendatensatz verbunden. Da Denken anstrengend ist, 
hätte ich mir die Kopiervorlage dafür wohl mit dem Extensionbuilder 
erstellt. Fertig.
Aber dank deines Post habe ich jetzt gelernt, dass TYPO3 auch 
Array<->XML-Übersetzer zur Verfügung stellt.



More information about the TYPO3-german mailing list