[Typo3] eigene FlexForm Inhalt abspeichern

cppnap

Lt. Junior Grade
Registriert
Nov. 2008
Beiträge
487
Guten Tag,

ich habe für mein Plugin eine Flexform geschrieben und registriert.
Es handelt sich hierbei mehr oder weniger nur um 1 Element, welches zum Kategorisieren gedacht ist.

Jedoch wird beim abspeichern der ausgewählte Wert der Flexform nicht abgespeichert. Ich finde auch nicht wirklich ein passendes Tutorial welches mir das erklärt.
Das Buch für Extension-Entwicklung sagt mir, es ist dringend empfohlen immer auf Speichern zu klicken - ja toll mach ich aber bringt nix.

Nun meine Frage(n) - Warum wird der Wert nicht gespeichert? Wohin sollte Typo3 den Wert eigentlich speichern in welche DB-Tabelle? Falls es eines Tages doch klappt, dass ich den Wert gespeichert habe, wie kann ich Diesen in einem Controller dann auslesen?


ext_tables.php
PHP:
$pluginSignature = 'door_door';
$TCA['tt_content']['types']['list']['subtypes_addlist'][$pluginSignature] = 'pi_flexform';
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue(
    $pluginSignature,
    'FILE:typo3conf/ext/' . $_EXTKEY . '/Configuration/FlexForms/FF_door_doorlisting.xml'
);

Flexform
HTML:
<T3DataStructure>
    <meta>
        <langDisable>1</langDisable>
    </meta>
    <ROOT>
        <el>
            <settings.header>
                <TCEforms>
                    <exclude>1</exclude>
                    <label>Auswahl der Tür-Kategorien</label>
                    <config>
                        <type>select</type>
                        <items type="array">
                            <numIndex index="0" type="array">
                                <numIndex index="0">CPL-Türen</numIndex>
                            </numIndex>
                            <numIndex index="1" type="array">
                                <numIndex index="0">Weislacktüren</numIndex>
                            </numIndex>
                            <numIndex index="2" type="array">
                                <numIndex index="0">Massivholztüren</numIndex>
                            </numIndex>
                            <numIndex index="3" type="array">
                                <numIndex index="0">Echtholzfurniertüren</numIndex>
                            </numIndex>
                        </items>
                    </config>
                </TCEforms>
            </settings.header>
        </el>
    </ROOT>
</T3DataStructure>

Vielen Dank für eure Hilfe :-)
 
Code:
<config>
  <type>select</type>
  <items type="array">
    <numIndex index="0" type="array">
      <numIndex index="0">Auswahl1</numIndex>
      <numIndex index="1">wert1</numIndex>
    </numIndex>
    <numIndex index="1" type="array">
      <numIndex index="0">Auswahl2</numIndex>
      <numIndex index="1">wert2</numIndex>
    </numIndex>
    <numIndex index="3" type="array">
      <numIndex index="0">Auswahl3</numIndex>
      <numIndex index="1">wert3</numIndex>
    </numIndex>
  </items>
</config>

dir fehlt das wert-feld. Flexform register hat wohl geklappt weil sonst wäre es wohl nicht da ;-)
 
Ja das stimmt, jetzt funktioniert es, danke :)
 
Zurück
Oben