我想要做這樣的事情:嫩枝過濾器包含的模板
{{ include("tpl.html")|f }}
但是,這似乎並沒有工作,它只是印刷tpl.html
不進行任何過濾,然後我想:
{% filter f %}
{% include "tpl.html" %}
{% endfilter %}
它的工作。我只是想知道,爲什麼我不能使用較短的一個?我誤解了什麼嗎? 在此先感謝。
我想要做這樣的事情:嫩枝過濾器包含的模板
{{ include("tpl.html")|f }}
但是,這似乎並沒有工作,它只是印刷tpl.html
不進行任何過濾,然後我想:
{% filter f %}
{% include "tpl.html" %}
{% endfilter %}
它的工作。我只是想知道,爲什麼我不能使用較短的一個?我誤解了什麼嗎? 在此先感謝。
對不起,我是這麼長時間回來:-)
的事實是,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
標籤將編譯一些代碼來控制輸出緩衝器。
不,我想申請減價過濾器沒有整個輸出。或者這聽起來很愚蠢?無論如何,我想說,那不是逃避,而是任何過濾器。 – 2013-04-20 15:46:51
要在一段代碼應用過濾器,你有過濾器標籤來包裝它:
{% filter f %}
...
{% endfilter %}
什麼您最初嘗試是過濾這枝由雙括號中定義的變量:
{{ variable name|filter }}
閱讀更多檢查出過濾器here
'{{}}'接受一個表達式,不一定是一個變量。在OP的情況下,過濾函數調用是表達式,這裏沒有錯誤。 – 2013-04-23 11:37:21
樹枝文檔,你有沒有發現一個較短的方式做到這一點?或者正在使用'{%filter%}'仍然是最好的方法? – mpen 2015-10-07 16:43:06