Typo3 使用f:form viewhelper将数组从流体模板提交到控制器
我目前正在编写一个带有后端模块的Extbase扩展。我已经为后端模块的模板分配了一个数组。现在,我尝试将该数组提交回我的crontroller操作“pageGenerator”,并在模板中输入表单。 以下是我的控制器和模板中的代码: 控制器:Typo3 使用f:form viewhelper将数组从流体模板提交到控制器,typo3,fluid,extbase,Typo3,Fluid,Extbase,我目前正在编写一个带有后端模块的Extbase扩展。我已经为后端模块的模板分配了一个数组。现在,我尝试将该数组提交回我的crontroller操作“pageGenerator”,并在模板中输入表单。 以下是我的控制器和模板中的代码: 控制器: public function listAction() { $array = [ '1' => '', '2' => '', '3' => '' ]; $this-
public function listAction()
{
$array = [
'1' => '',
'2' => '',
'3' => ''
];
$this->view->assign('array', $array);
$this->view->setTemplatePathAndFilename('EXT:bm_test/Resources/Private/Templates/template.html');
}
public function pageGeneratorAction(array $array=null){}
流体模板:
<div align="center">
<f:form method="post" controller="DomainModel" action="pageGenerator"
name="array" object="{array}" >
<input type="text" name="array[1]">
<input type="text" name="array[2]">
<input type="text" name="array[3]">
<f:form.submit value="Submit" />
</f:form>
</div>
所以看起来数组没有提交。
有人知道我做错了什么吗?提前感谢您的帮助。您是否尝试在setTemplatePathAndFilename之后插入赋值变量? 因为在类型3中,如果模板没有与所需操作相同的名称,则首先将其序列化,然后返回带有指定变量的视图 范例
我只是试了一下,可惜没用。我还通过确认模板确实收到了数组,从而缩小了问题的范围。我可以从模板中访问它。
Too few arguments to function Bmt\BmTest\Controller\DomainModelController::pageGeneratorAction(), 0 passed and exactly 1 expected
$this->view->setTemplatePathAndFilename('EXT:bm_test/Resources/Private/Templates/template.html');
$this->view->assign('array', $array);
return $this->view->render();