[英]Silex redirect from Twig template
首先,我知道這是一件可怕的事情,應該只在控制器邏輯中完成,但是我想做的是在Twig中創建一個自定義重定向標簽,該標簽會觸發Silex重定向。
我有一個自定義節點,將以下內容輸出到doDisplay模板中:
return $this->getEnvironment()->getExtension('silex')->getApp()->redirect('/', 301);
基本上,這得到了Twig環境和我創建的擴展,該擴展具有getApp方法,該方法返回Silex $ app變量,該變量包含重定向方法。
但這只會將Array()返回到屏幕。 有什么建議么?
您要做什么是不可能的。 當您已經發送了200
響應以及一個樹枝模板作為正文時,就不能將Response
對象發送給客戶端。 您可以做的是將meta
重定向標記注入頁面或使用JS:
例如:
{% if somecondition %}
<script>window.location.href = {{yourRoute}}</script>
{% endif }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.