2017-02-15 90 views
2

您好,我如何將一個數組傳遞給一個樹枝包括?如何從數組中包含樹枝文件?

{% set navbar_logo %}["{{sprinkle|raw}}/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"]{% endset %} 

{% include navbar_logo %} 

這導致:

Unable to find template "["@admin/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"]" 

這工作得很好:

{% include ["{{sprinkle|raw}}/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"] %} 

,但我需要從變量得到它。

這也適用於:

{% set navbar_logo %}{{sprinkle|raw}}/components/content/navbar/navbar-logo.html.twig{% endset %} 

{% include navbar_logo %} 

但我需要備份櫃面第一個不存在。 我該怎麼做?

回答

1

如果您使用{% set .. %}... {% endset %},嫩枝被處理的變量作爲字符串

您應該將代碼轉換到這一點,那麼它的工作原理

{% set navbar_logo = [ sprinkle~"/components/content/navbar/navbar-logo.html.twig", "/components/content/navbar/navbar-logo.html.twig"] %} 
2

什麼:

{% set navbar_logo = include(sprinkle|raw ~ '/components/content/navbar/navbar-logo.html.twig') %} 

我不完全知道你想達到什麼目的,但更好的方法是將其設置在一個基本佈局的塊中。

{% block navbar_logo %} 
    {{ include(sprinkle|raw ~ '/components/content/navbar/navbar-logo.html.twig') }} 
{% endblock %} 

然後,當你以後需要轉儲你的標誌,使用{{ block('navbar_logo') }}

更多關於blocks