Twig: не может переопределить блок во включенном файле
Как я могу переопределить блок внутри включенного файла шаблона?
Пример:
{# layout.html #}
{% include "menu.html" %}
{# menu.html #}
{% block overrideme %}{% endblock %}
{# index.html #}
{% extends "layout.html" %}
{% block overrideme %}Overriden{% endblock %}
Я где-то читал, что функция признака была реализована? Я не могу найти документацию об этом, хотя кто-нибудь знает, как я мог бы сделать эту работу?
Ответы
Ответ 1
Если вы хотите переопределить блоки внутри файла, который вы включаете, вы должны "вставлять" его, а не "включать" его.
{% embed "menu.html" %}
{% block overrideme %}
Overriden
{% endblock %}
{% endembed %}
Подробнее см. в документах: http://twig.sensiolabs.org/doc/tags/embed.html