Twig 通过多个模板传递块

Twig 通过多个模板传递块,twig,Twig,我正在尝试设置一些常见的模板,我希望在整个网站中使用这些模板。 从模板开始以呈现用户。我将其分为两个不同的子模板: users.html.twig(用于显示用户表的模板) user.html.twig(用于呈现单个用户的模板) 根据“包含”此子模板的控制器,我可能希望为每个用户添加一些按钮 假设我有一个可以搜索用户的操作。此操作具有模板search.html.twig 现在我想在我的search.html.twig中包含users.html.twig,它本身包括user.html.twig。棘手

我正在尝试设置一些常见的模板,我希望在整个网站中使用这些模板。 从模板开始以呈现用户。我将其分为两个不同的子模板: users.html.twig(用于显示用户表的模板) user.html.twig(用于呈现单个用户的模板)

根据“包含”此子模板的控制器,我可能希望为每个用户添加一些按钮

假设我有一个可以搜索用户的操作。此操作具有模板search.html.twig 现在我想在我的search.html.twig中包含users.html.twig,它本身包括user.html.twig。棘手的部分是,我想在search.html.twig中定义一个在user.html.twig中呈现的块。我尝试了嵌入,但不幸的是,它没有呈现任何内容:

search.html.twig

{% embed 'StregoUserBundle:Entity:users.html.twig' with {'users': results, 'perRow' : 3} %}
            {% block user_additional %}
                    TOOOOOOOOOOOOP
            {% endblock user_additional %}
{% endembed %}
{% block user_table %}
    {% for user in users %} 
        <div >
                {% embed 'StregoUserBundle:Entity:user.html.twig' with {'user': user} %}
                    {% block user_additional %}
                           {{ parent()}}
                    {% endblock user_additional %}
                {% endembed %}  
        </div>
    {% endfor %}
{% endblock user_table %}
{% block single_user %}
            <div class="people-list">
            <a href="{{ path('profile_show', { 'username': user.username }) }}">
                <img src="{{ user.profilePic  | imagine_filter('profile_thumb') }}" alt="{{ user.username }}" class="img-polaroid">
            </a>
            <a href="{{ path('profile_show', { 'username': user.username }) }}"><h3>{{ user.username }}</h3></a>
            <h3><small>{{ user.firstName }} {{ user.lastName }}</small></h3>
            {% block user_additional %}
            {% endblock user_additional %}

            </div> 

{% endblock single_user %}
users.html.twig

{% embed 'StregoUserBundle:Entity:users.html.twig' with {'users': results, 'perRow' : 3} %}
            {% block user_additional %}
                    TOOOOOOOOOOOOP
            {% endblock user_additional %}
{% endembed %}
{% block user_table %}
    {% for user in users %} 
        <div >
                {% embed 'StregoUserBundle:Entity:user.html.twig' with {'user': user} %}
                    {% block user_additional %}
                           {{ parent()}}
                    {% endblock user_additional %}
                {% endembed %}  
        </div>
    {% endfor %}
{% endblock user_table %}
{% block single_user %}
            <div class="people-list">
            <a href="{{ path('profile_show', { 'username': user.username }) }}">
                <img src="{{ user.profilePic  | imagine_filter('profile_thumb') }}" alt="{{ user.username }}" class="img-polaroid">
            </a>
            <a href="{{ path('profile_show', { 'username': user.username }) }}"><h3>{{ user.username }}</h3></a>
            <h3><small>{{ user.firstName }} {{ user.lastName }}</small></h3>
            {% block user_additional %}
            {% endblock user_additional %}

            </div> 

{% endblock single_user %}
{%block user\u table%}
{users%%中的用户为%s}
{%embed'stregourbundle:Entity:user.html.twig'和{'user':user}%}
{%block user_additional%}
{{parent()}}
{%endblock用户\额外%}
{%endembed%}
{%endfor%}
{%endblock用户\表%}
user.html.twig

{% embed 'StregoUserBundle:Entity:users.html.twig' with {'users': results, 'perRow' : 3} %}
            {% block user_additional %}
                    TOOOOOOOOOOOOP
            {% endblock user_additional %}
{% endembed %}
{% block user_table %}
    {% for user in users %} 
        <div >
                {% embed 'StregoUserBundle:Entity:user.html.twig' with {'user': user} %}
                    {% block user_additional %}
                           {{ parent()}}
                    {% endblock user_additional %}
                {% endembed %}  
        </div>
    {% endfor %}
{% endblock user_table %}
{% block single_user %}
            <div class="people-list">
            <a href="{{ path('profile_show', { 'username': user.username }) }}">
                <img src="{{ user.profilePic  | imagine_filter('profile_thumb') }}" alt="{{ user.username }}" class="img-polaroid">
            </a>
            <a href="{{ path('profile_show', { 'username': user.username }) }}"><h3>{{ user.username }}</h3></a>
            <h3><small>{{ user.firstName }} {{ user.lastName }}</small></h3>
            {% block user_additional %}
            {% endblock user_additional %}

            </div> 

{% endblock single_user %}
{%block single_user%}
{{user.firstName}{{user.lastName}}
{%block user_additional%}
{%endblock用户\额外%}
{%endblock单用户%}
我尝试了{{block('XXX')}}的几种组合,包括、嵌入、使用等。。。但是没有找到解决方案。

不应该

{% endembed %}

不应该

{% endembed %}