嗨我在TYPO3 7.6中有一个扩展名。我有两个动作列表和节目。在我的flexform中有一个可切换的控制器action.list动作正在运行。但表明行动不起作用。请检查我的代码。
柔性成型
<switchableControllerActions>
<TCEforms>
<label>Display Type</label>
<onChange>reload</onChange>
<config>
<type>select</type>
<items type="array">
<numIndex index="1" type="array">
<numIndex index="0">List</numIndex>
<numIndex index="1">News->list</numIndex>
</numIndex>
<numIndex index="2" type="array">
<numIndex index="0">Detail</numIndex>
<numIndex index="1">News->show</numIndex>
</numIndex>
</items>
<minitems>0</minitems>
<maxitems>1</maxitems>
<size>1</size>
</config>
</TCEforms>
</switchableControllerActions>
列表视图
<f:if condition="{news}">
<ul>
<f:for each="{news}" as="item">
<li>
<f:link.action action="show" controller="News" arguments="{news:'{item}'}" noCacheHash="false" pageUid="{settings.detailPid}" >
{item.title}
</f:link.action>
</li>
</f:for>
</ul>
</f:if>
我从列表页面的配置中选择了列表,并从详细页面中选择了详细信息。列表工作正常,但细节不起作用。
答案 0 :(得分:1)
尝试添加如下参数:
arguments="{news: item.uid}"
在showAction中你可以得到这样的参数:
$newsId = $this->request->getArgument('news');
$news = $this->newsRepository->findByUid($newsId);
$this->view->assign('news', $news);
它可以完美地按照您的要求工作。
答案 1 :(得分:1)
没有输入任何错误消息。只显示空白页
您可能想要更改第一个
请注意,您不想在生产环境中进行这些调整。
然后你应该能够看到错误。
我从列表页面的配置中选择了列表并从中选择了详细信息 详细页面。列表工作正常,但细节不起作用。
您是否已将show动作添加到插件配置中?在扩展名ext_localconf.php
中查找寻找此电话: ExtensionUtility :: configurePlugin
您的Controller-&gt;动作组合必须存在于您传递的第一个数组参数中。这可能看起来像:
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
'Vendor.ext_key',
'News',
array(
'News' => 'list,show'
)
);
如果使用Controller-&gt;动作组合(与其他组合)传递第4个参数,则可以定义不应缓存的操作。您可以使用它来配置表单操作或可过滤的结果列表。
注意:总是使用ext_localconf.php和其他引导文件中的完整命名空间,如果你使用“use”语句可能会有另一个致命错误,typo3会连接所有这些引导文件。 < / p>
另外 - 你可能误解了switchableControllerActions模式。如果您希望一个插件(ce)显示两个动作,则该选项必须为
<switchableControllerActions>
<TCEforms>
...
<config>
<type>select</type>
<items type="array">
...
<numIndex index="3" type="array">
<numIndex index="0">List with Details</numIndex>
<numIndex index="1">News->list;News->show</numIndex>
</numIndex>
</items>
...
</config>
</TCEforms>
</switchableControllerActions>
所选选项将保存在xml数据结构中并用作配置,因此如果此实例只有一个操作可用,那么您将收到错误。
如果您使用不同的内容元素来显示列表和详细信息视图,则必须在两个内容元素中选择正确的switchableControllerAction选项。