我正在寻找一种满足某些条件的重定向到另一个模板的方法。
赞:
public funtion redirectAction() {
if(certain conditions = TRUE){
REDIRECT TO ANOTHER TEMPLATE WITH DIFFERENT CONTENT
}
}
我已经在现有动作中看到了一些表情:
$this->redirect('list');
在这种情况下,'list'
是默认的List.html
模板,对吗?
因此,我认为如果将'list'
替换为其他模板名称,则可以解决此问题。但是我收到一个opps错误。
或者还有其他调用其他模板的解决方案吗?
非常感谢您!
答案 0 :(得分: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”。