2017-10-19 8 views
1

J'ai passé de Twig 1.x à 2.x et j'ai été mis en boîte à l'inclusion. Je vais utiliser la balise 'include' dans l'exemple ci-dessous pour montrer l'intention que je tente de décrire.Modèle de brindille Inclut avec les blocs d'erreur

#dashboard.html.twig 
{# BREADCRUMB #} 
{% include 'breadcrumb/breadcrumb.twig' with {pagetitle: block('pagetitle'), 
breadcrumb: block('breadcrumb')} %} 
{# END BREADCRUMB #} 

#breadcrumb.twig 
<div class="row wrapper page-heading m-l-15"> 
    <h1 class="pagetitle">{{ pagetitle }}</h1> 
    <ol class="breadcrumb"> 
     {% autoescape false %} 
      {{ breadcrumb }} 
     {% endautoescape %} 
     {% block breadcrumb %} 
      <li> 
       <a href="/">{{ 'homepage.menu.home'|trans }}</a> 
      </li> 
      {% if pagetitle %} 
       <li class="active"> 
        <strong>{{ pagetitle }}</strong> 
       </li> 
      {% endif %} 
     {% endblock %} 
    </ol> 
</div> 

#index.htlm.twig 
{% extends 'dashboard.html.twig' %} 
{% block pagetitle %}{{ 'meeting.rooms.list'|trans }}{% endblock %} 
{% block title %}{{ 'menu.management.meeting_rooms'|trans }}{% endblock %} 

Après updrage à Brindille j'ai eu l'erreur suivante: "Block "pagetitle" sur le modèle "dashboard.html.twig"n'existe pas."

Une suggestion ou une idée?

+0

Si tel était le cas, cela ne fonctionnait pas non plus dans la version 1.x. Pour tester je l'ai déjà retiré le pagetitle du comprennent: '{% include 'd'ariane/breadcrumb.twig' avec {Fil d'Ariane: bloc ('breadcrumb')}%}' Ei obtenu l'erreur suivante: * * Bloquer "breadcrumb" sur le modèle "dashboard.html.twig" n'existe pas ** " –

Répondre

1

Vous pouvez utiliser la balise embed qui combine le comportement de include et extends pour Twig 2.x. embed tag

+0

Ok, alors j'ai remplacé l'include par' {% embed "breadcrumb/breadcrumb.twig" avec {pagetitle: block ('pagetitle '), breadcrumb: block (' breadcrumb ')}%} {% endembed%} ' J'ai l'erreur:" Block "breadcrumb" sur le modèle "dashboard.html.twig" n'existe pas. " Est-ce que c'est ce que vous avez suggéré? :( –