TYPO3 Extbase Flexform:获取foreign_table_where的选定flexform值

时间:2017-02-07 11:06:07

标签: php content-management-system typo3 extbase typo3-7.6.x

是否可以获取所选的flexform值以自定义以下选择框?例如,我有一个插件,我必须选择带有选择框的类型。然后出现第二个选择框,称为kategorie,它基于所选类型。

伪代码

<settings.type>
    <TCEforms>
        <onChange>reload</onChange>
        <label>Type</label>
        <config>
            <type>select</type>
            <renderType>selectSingle</renderType>
            <items type="array">
            </items>
            <size>1</size>
            <minitems>1</minitems>
            <maxitems>1</maxitems>
            <foreign_table>tx_test_domain_model_type</foreign_table>
        </config>
    </TCEforms>
</settings.type>
<settings.category>
    <TCEforms>
        <label>Category</label>
        <config>
            <type>select</type>
            <renderType>selectSingle</renderType>
            <items type="array">
            </items>
            <size>1</size>
            <minitems>1</minitems>
            <maxitems>1</maxitems>
            <foreign_table>tx_test_domain_model_category</foreign_table>
            <foreign_table_where> AND tx_test_domain_model_categorie.type = ###REC_FIELD_?settings.type?###</foreign_table_where>
        </config>
    </TCEforms>
</settings.category>

谢谢你的帮助。 我正在使用TYPO3 7.6.14。

1 个答案:

答案 0 :(得分:1)

Flexform设置作为XML存储在数据库的一个字段中。要从中读取值,您必须首先解析XML。

因此无法使用###REC_FIELD_settings.type###等内容。

有一篇博文建议使用自定义itemsProcFunchttps://blog.bartlweb.net/2012/10/auswahllisten-im-typo3-backend-optimieren/