Typo3 如何向用于后端模块的控制器获取flexform值?

Typo3 如何向用于后端模块的控制器获取flexform值?,typo3,flexform,Typo3,Flexform,我被困在一个地方。我正在开发typo3中的扩展。我使用flexform作为管理员。 现在,我尝试在控制器中获取后端模块的flexform值,但每次都得到“Null”。我在前端模块中尝试的值和我可以获取的值相同 以下是我的flexform代码: <T3DataStructure> <meta> <langDisable>1</langDisable> </meta> <sheets>

我被困在一个地方。我正在开发typo3中的扩展。我使用flexform作为管理员。 现在,我尝试在控制器中获取后端模块的flexform值,但每次都得到“Null”。我在前端模块中尝试的值和我可以获取的值相同

以下是我的flexform代码:

<T3DataStructure>
    <meta>
        <langDisable>1</langDisable>
    </meta>
    <sheets>
        <sCategorybox>
            <ROOT>
                <TCEforms>
                    <sheetTitle>XY</sheetTitle>
                </TCEforms>
                <type>array</type>
                <el>
                    <settings.cat1>
                        <TCEforms>
                         <exclude>1</exclude>
                         <label>XYZ</label>
                         <config>
                          <type>select</type>
                            <renderType>selectMultipleSideBySide</renderType>
                            <size>5</size>

                            <foreign_table>tx_myext</foreign_table>
                            <foreign_table_where> AND tx_myext.hidden = 0 AND tx_myext.deleted = 0 ORDER BY name ASC</foreign_table_where>
                         </config>
                        </TCEforms>
                    </settings.cat1>
                </el>
            </ROOT>
        </sCategorybox>
    </sheets>

</T3DataStructure>

1.
XY
排列
1.
XYZ
选择
选择MultipleSideBySide
5.
tx_myext
和tx_myext.hidden=0和tx_myext.deleted=0按名称ASC排序
在控制器的操作中,我尝试了如下
$this->settings['cat1']

Flexform用于后端,当管理员向页面添加扩展时,管理员可以在后端选择类别


扩展还具有后端模块和后端模块的seprate操作,我希望在该操作中选择类别值。

这看起来像插件的FlexForm

前端插件上下文中的Extbase操作将填充tt_content.pi_flexform列中的设置(如果它们像您一样被称为
设置…

在后端,您不在插件上下文中。因此,您需要获取pi_flexform列并自己读取XML结构


\TYPO3\CMS\Core\Service\FlexFormService
有一些函数可以帮助您解析XML。

请添加一些代码。我不清楚这是页面的FlexForm还是内容元素的FlexForm。还有,您如何尝试在后端模块中访问它。@JonasEberle检查更新的问题。