我正在将项目更新为TYPO3 8LTS,我正在使用最新版本的flux和fluidcontent。它大部分时间都有效。然而,我有一个问题,如果不深入研究助焊剂和核心,我无法解决。所以也许这里的sombody可以发现我的问题并节省一些调试。
我有一个带有可扩展对象的fluidcontent元素。这是一种手风琴,编辑可以根据需要添加任意数量的面板。配置如下所示:
<f:section name="Configuration">
<flux:form id="accordion">
<flux:form.option name="group" value="Container" />
<flux:form.option name="icon" value="EXT:my_ext/Resources/Public/Images/ContentIcons/Accordion.jpg" />
<flux:form.section name="panels">
<flux:form.object name="panel">
<flux:field.input name="title" />
<flux:field.checkbox name="active" />
</flux:form.object>
</flux:form.section>
</flux:form>
<flux:grid>
<f:for each="{panels}" as="panel" iteration="iteration">
<flux:grid.row>
<flux:grid.column name="column.{iteration.index}"
label="{f:if(condition: panel.panel.title, then: panel.panel.title, else: 'Panel {iteration.cycle}')}" />
</flux:grid.row>
</f:for>
</flux:grid>
</f:section>
这就像预期的那样。可以添加和删除面板。但是,如果我创建一个新的内容元素并添加一些面板,然后第一次保存并关闭内容元素,我会收到核心错误消息,告诉我
&#34; _1:尝试在页面上插入记录&#39; [root-level]&#39; (0)这个地方 table,tt_content,不允许_&#34;。
创建的内容元素已正确存储在数据库中,包含所有字段,但存储了面板配置的pi_flexform字段。该字段为空。我现在可以编辑元素并创建面板,并且成功保存配置。
错误仅在第一次保存新内容元素时发生。