TYPO3 - 将 searchForm 的参数传递给 2 个插件

问题描述 投票:0回答:1

我正在将旧的 Flexform 迁移到 TYPO3 12 中的多个插件。

现在看来我有一个简单的问题,但找不到好的解决方案。

我有2个插件:

  1. 搜索表格

  2. 列表

两者都使用相同的控制器并有 2 个不同的操作:

  • 搜索表单操作
  • 列表动作

现在我需要在搜索表单中有一个简单的选择框,并且我需要两个插件以及两个操作中的搜索表单的参数,而不仅仅是一个操作。

看来,当我通过

在搜索表单中创建选择框时
<f:form.select name="myproperty" options="{0: 'Please Select', 1: 'first option'}" value="{selectedValueFromController}"/>

它会生成 HTML

<select name="tx_myextension_searchform[myproperty]" ....>

因此它将“searchform”放入选择名称中。

我想,这就是为什么我只能在控制器操作“searchFormAction”中获取其后值,而不能在 listAction 中获取其后值。 我通过以下方式做到这一点:

$arrRequest = $this->request->getArguments();

如何在两个操作中获取搜索表单的值?

感谢您的任何提示或解决方法。如何才能做到“最佳实践”

typo3 extbase typo3-12.x
1个回答
0
投票

$this->request->getArguments() 仅返回以插件名称 tx_myextension_searchform 为前缀的值。但您仍然可以通过 $_POST/$_GET 全局变量访问它们。

您的问题有多种有效的解决方案,但这取决于您的项目如何工作,您是否可以找到一个干净简单的解决方案或必须重建整个扩展。

© www.soinside.com 2019 - 2024. All rights reserved.