[Frage] flexform - settings - Select [Gelöst] TYPO3-Version: 6.1.1

  • jochla jochla
    Jedi-Ritter
    0 x
    128 Beiträge
    0 Hilfreiche Beiträge
    27. 11. 2013, 22:04

    Hallo,

    ich möchte testweise den Wert eines Select-Feldes aus dem BE-Formular (flexform) im FE ausgeben, um zu sehen ob und wie der Wert im Template ankommt.

    flexform-Definition:

    1. <settings.flexform.mainRegion>
    2. <TCEforms>
    3. <label>...</label>
    4. <onChange>reload</onChange>
    5. <config>
    6. <type>select</type>
    7. <items type="array">
    8. <numIndex index="0" type="array">
    9. <numIndex index="0">Alle Reviere</numIndex>
    10. <numIndex index="1">0</numIndex>
    11. </numIndex>
    12. </items>
    13. <foreign_table>tx_sccruiseplan_domain_model_mainregion</foreign_table>
    14. <foreign_table_where>ORDER BY main_region_name</foreign_table_where>
    15. <minitems>0</minitems>
    16. <maxitems>1</maxitems>
    17. </config>
    18. </TCEforms>
    19. </settings.flexform.mainRegion>

    Controller.php

    1. /**
    2.  * @var Tx_Extbase_Configuration_ConfigurationManagerInterface
    3.  */
    4. protected $configurationManager;
    5.  
    6. /**
    7.  * action list cruises
    8.  *
    9.  * @return void
    10.  */
    11. public function listAction() {
    12. $cruises = $this->cruiseRepository->findAll();
    13. $this->view->assign('cruises', $cruises);
    14. $settings = $this->settings['flexform']['mainRegion'];
    15. $this->view->assign('settings.mainRegion', $settings);
    16. }

    Template List.html

    1. <f:for each="{cruises}" as="cruise">
    2. ...
    3. <td class="td-1">{settings.mainRegion}</td>
    4. ...
    5. </f:for>

    Im Frontend kommt aber nichts an, die Tabellenspalte ist leer. Wo mache ich den Fehler?

    Johannes.

  • 0 x
    21 Beiträge
    0 Hilfreiche Beiträge
    28. 11. 2013, 08:46 - Lösung

    hi Jochla,

    ich greif im Template immer direkt auf die Werte im Flexform zu ohne den Umweg über einen Assign. D.h. wenn ich ein Feld im Flexform definiere

    <settings.myfield>
    <TCEform>
    ....
    </TCEform>
    </settings.myfield>

    dann greif ich immer im Template über {settings.myfield} darauf zu.

    Probier doch mal {settings.flexform.mainRegion} als Aufruf direkt im Template.

    Grüße
    Thomas


  • 1
  • 0 x
    21 Beiträge
    0 Hilfreiche Beiträge
    28. 11. 2013, 08:46

    hi Jochla,

    ich greif im Template immer direkt auf die Werte im Flexform zu ohne den Umweg über einen Assign. D.h. wenn ich ein Feld im Flexform definiere

    <settings.myfield>
    <TCEform>
    ....
    </TCEform>
    </settings.myfield>

    dann greif ich immer im Template über {settings.myfield} darauf zu.

    Probier doch mal {settings.flexform.mainRegion} als Aufruf direkt im Template.

    Grüße
    Thomas

  • jochla jochla
    Jedi-Ritter
    0 x
    128 Beiträge
    0 Hilfreiche Beiträge
    28. 11. 2013, 08:55

    Hallo Thomas,

    super, danke für den Tipp, funktioniert einwandfrei! :-)
    Warum auch einfach, wenn's umständlich auch geht ;-)

    Gruß, Johannes.

  • 1