TYPO3 8.7使用子元素m:n更新不起作用
我有一个扩展和一个前端表单来创建和更新元素。用户可以创建具有多个日期的发票,这些日期存储为m:n记录 创建发票和日期可用于:TYPO3 8.7使用子元素m:n更新不起作用,typo3,typo3-8.x,Typo3,Typo3 8.x,我有一个扩展和一个前端表单来创建和更新元素。用户可以创建具有多个日期的发票,这些日期存储为m:n记录 创建发票和日期可用于: <f:form.checkbox name="newRechnungen[termine][]" value="{termin.uid}" /> 但如果我编辑发票并提交表单,则会出现错误: <f:form.checkbox name="rechnungen[termine][]" value="{termin.uid}" /> 显示错误
<f:form.checkbox name="newRechnungen[termine][]" value="{termin.uid}" />
但如果我编辑发票并提交表单,则会出现错误:
<f:form.checkbox name="rechnungen[termine][]" value="{termin.uid}" />
显示错误类型:
表单字段“[items][]”无效。原因:“[]”不是用来作为最后的论点,而是在中间的某个地方(像Fo[[]])/P>
如解决方案所述将标记更改为
<f:form.checkbox name="rechnungen[termine][{key}]" value="{termin.uid}" />
显示错误:
#1297759968:在属性路径“files”处进行属性映射时出现异常:PHP警告:spl_object_hash()期望参数1为object,在/usr/share/typo3/typo3_src-7.6.2/typo3/sysext/extbase/Classes/Persistence/ObjectStorage.PHP第155行中给出空值=
文档页面上描述的用于表单标记的enctype=“multipart/form data”
解决方案不起作用
知道如何解决这个问题吗?检查为下面的复选框生成的HTML格式是否正确
<f:form.checkbox name="rechnungen[termine][{key}]" value="{termin.uid}" />
您的HTML中必须有类似的内容:
我现在可以通过在initializeUpdateAction中取消设置空值来解决此问题:
foreach($args['rechnungen']['termine'] as $key => $value) {
if (intval($value) === 0) {
unset($args['rechnungen']['termine'][$key]);
}
}
是页面中的html代码,出现错误。所有复选框均已提交-也包括未选中的复选框。。。所以我不明白他们为什么提交。。。这是控制器中initialiceUpdateAction的输出:数组([action]=>update[controller]=>Xxxxxx[rechnungen]=>Array([\uu标识]=>41[termine]=>Array([0]=>[1]=>2]=>[3]=>136[4]=>))问题是,typo3将每个复选框也添加为一个具有空值的隐藏字段。这导致了错误啊,我记得我也有同样的问题