控制器操作-重定向到另一个模板

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

如果满足某些条件,我正在寻找一种重定向到另一个模板的方法。

爱:

public funtion redirectAction() {
 if(certain conditions = TRUE){
  REDIRECT TO ANOTHER TEMPLATE WITH DIFFERENT CONTENT
 }
}

我已经在现有动作中看到了一些表达方式:

$this->redirect('list');

在这种情况下,'list'是默认的List.html模板,对吗?因此,我想如果我将'list'替换为其他模板名称,则可以解决此问题。但是我收到opps错误。

或者还有其他解决方案来调用不同的模板吗?

非常感谢!

forms redirect fluid extbase typo3-9.x
1个回答
0
投票

通过控制器中的重定向,您始终会重定向到另一个功能,而不是模板。

例如,以

$this->redirect('list2');

然后您将重定向到函数list2Action(),这将需要一个模板List2.html

但是,通常在流体中使用开关更容易。例如:

<f:if condition="{abc} == 1">
<f:then>
   <f:render partial="TempalteAbcTrue" arguments="{_all}" />
</f:then>
<f:else>
    <f:render partial="TempalteAbcFalse" arguments="{_all}" />
</f:else>

如果使用的是extbase的常规文件夹结构,则具有“布局”,“模板”和“部分”文件夹。在上面的示例中,您可以在文件夹“ Partials”中创建2个文件:“ TempalteAbcTrue.html”和“ TempalteAbcFalse.html”。

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