簡體   English   中英

Twig過濾器包含模板

[英]Twig filter included template

我想做這樣的事情:

{{ include("tpl.html")|f }}

但這似乎不起作用,它只是打印tpl.html沒有任何過濾,然后我嘗試:

{% filter f %}
    {% include "tpl.html" %}
{% endfilter %}

它奏效了。 我只是想知道,為什么我不能使用較短的一個? 我誤解了什么嗎? 提前致謝。

要對代碼段應用過濾器,必須使用過濾器標記對其進行包裝:

{% filter f %}
    ...
{% endfilter %}

你最初嘗試的是過濾一個變量,該變量在twig中由雙括號定義:

{{ variable name|filter }}

閱讀更多檢查出過濾器樹枝文檔在這里

很抱歉沒那么久回來:-)

事實是include函數在模板上寫入。

如果你這樣做:

{% set s = include('FuzHomeBundle:Default:test.html.twig') %}

哪個不應該顯示某些東西,你將獲得文件輸出的內容,並且s變量將被設置為null

如果你這樣做:

{% filter upper %}
{% include 'FuzHomeBundle:Default:test.html.twig' %}
{% endfilter %}

要么

{% filter upper %}
{{ include('FuzHomeBundle:Default:test.html.twig' }}
{% endfilter %}

filter標簽將編譯一些控制輸出緩沖區的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM