如果Twig中的变量为null,则取消父模板

如果Twig中的变量为null,则取消父模板,twig,Twig,我对Twig是个新手,我正在努力想办法实现以下目标 我有一个对象,该对象具有一组属性,我希望根据属性类型(文本、图像、日期等)使用不同的细枝模板进行渲染 我想把它们呈现如下: <div class="row"> <div class="title">Title of property</div> <div class="propertycontent"> //Specific property cont

我对Twig是个新手,我正在努力想办法实现以下目标

我有一个对象,该对象具有一组属性,我希望根据属性类型(文本、图像、日期等)使用不同的细枝模板进行渲染

我想把它们呈现如下:

<div class="row">
      <div class="title">Title of property</div>
      <div class="propertycontent">
           //Specific property content depending on property type
      </div>
</div>

财产所有权
//特定的特性内容(取决于特性类型)
我的问题是,如果未定义属性,我无法确定是否跳过完整的输出。我希望能够使用父模板处理渲染属性内容的“包装”。如果属性值未定义,是否可以使用不返回任何内容的父模板?是否有另一个好的解决方案不依赖于包含“开始”/“结束”来包装每个模板


提前感谢。

解决方案:使用值(可能为空)和标题调用父级

父级(Property_wrapper.twig):


我想知道是否可以根据变量扩展一个小树枝模板。例如:
{%if my_var='…'%%}{%extends“my:Own:layout.html.TWIG”%}{%else%}{%extends“Any:Other:layout.html.TWIG”%}
这是一个选项吗?(我不发表这个答案,因为我不确定它是否有效)twig可以这样做:{%extends my_var?“foo.html”:“bar.html”%}@danisancas它真的对你有效吗?在我的例子中,当
value
false
时,无论我试图在子模板中调用什么块,结果都是空的。我错过什么了吗?
{% if value %}
    <div class="row">
    <div class="title">{{title}}</div>
    <div class="propertyContent">
            {% block content %}{% endblock %}
        </div>
    </div>
{% endif %}
{% extends 'property_wrapper.twig' %}
{% block content %}
    {{ value.value|number_format(2, ',') }} m
{% endblock %}