我想將Twig宏的集合分解爲單個文件,然後使用庫文件導入它們以收集所有導入語句。模塊化宏組織的嵌套樹枝導入
目前我們所有的宏都在一個文件中,但我寧願看到這樣的事情:
宏/ hello.twig:
{% macro hello() %}
Hello
{% endmacro %}
宏/ goodbye.twig:
{% macro goodbye() %}
Goodbye
{% endmacro %}
macro_lib.twig:
{% import "macro/hello.twig" as hello %}
{% import "macro/goodbye.twig" as goodbye %}
的基本模板應該只是導入macro_lib.twig
,但這不起作用:
{% import "macro_lib.twig" as lib %}
{{ lib.hello.hello() }}
但試圖調用嵌套宏返回Fatal error: Call to undefined method __TwigTemplate_d7...30::gethello()
我也試着像{% from "macro/hello.twig" import hello as hello %}
命名空間,但進口那些也失敗了。
是否可以像這樣嵌套導入的宏?
你好,我今天面臨同樣的問題......你最終得到了一個(固體)解決方案嗎?我嘗試使用_self,但它並沒有幫助..':(' – Stphane