Twig 有没有办法只加载有条件扩展的细枝?

Twig 有没有办法只加载有条件扩展的细枝?,twig,Twig,我想做这个代码块暗示的事情: {% if load_base %} {% extends "base.html" %} {% endif %} 所以,如果load_base不是真的,我根本不想要任何扩展。此模板中只有一块内容,我希望打印该内容,就像从未包含{%extends%}行一样 我确实在文档中看到了,但这仍然需要我制作一个空的模板文件,这看起来像是一个黑客。有什么更好的办法吗?不行。创建空模板也不起作用。扩展模板仅修改具有相同名称的块 例如: , main.twig的输出将始终为a

我想做这个代码块暗示的事情:

{% if load_base %}
  {% extends "base.html" %}
{% endif %}
所以,如果load_base不是真的,我根本不想要任何扩展。此模板中只有一块内容,我希望打印该内容,就像从未包含{%extends%}行一样


我确实在文档中看到了,但这仍然需要我制作一个空的模板文件,这看起来像是一个黑客。有什么更好的办法吗?

不行。创建空模板也不起作用。扩展模板仅修改具有相同名称的块

例如:

,

main.twig的输出将始终为a。块b的内容被忽略,因为它不在基本模板中。所以什么都不扩展是没有意义的,因为根本就没有输出


您必须以正确的顺序编写只包含块定义的简单模板

是的,对不起。。。这就是我所说的空模板。。。只有空的街区。如果我去掉extends标记,我正在使用的模板输出的代码与我想要的完全一样,这真是糟糕透了。但有时我希望代码与extends标记一起输出。没有办法让一个有条件的人这么做。
{# main.twig #}
{% extends "base.twig" %}

{% block a %}a{% endblock %}
{% block b %}b{% endblock %}
{# base.twig #}
{% block a %}{% endblock %}