Error at macros in embed - Twig

embedタブの中で、別ファイルで定義したマクロをincludeして使おうとしたら、ver.1.x は大丈夫だったのに、ver.2.x からエラーになる。

{% macro hoge(x, y, z) %}
{{x}} {{y}} {{z}}
{% endmacro %}

<div id="1">
  {% block xyz %}{% endblock %}
</div>

{% import 'macros.twig' as mcr %}
{% set x = 1 %}
{% set y = 2 %}
{% set z = 3 %}

<div id="0">
  {% embed "embed.twig" %}
    {% block xyz %}
      mcr.hoge(x, y, z)
    {% endblock %}
  {% endembed %}
</div>

期待する出力(ver.1.x での出力)

<div id="0">
  <div id="1">
    1 2 3
  </div>
</div>

ver.2.x でのエラー

Fatal error: Uncaught Twig_Error_Runtime: Accessing Twig_Template attributes is forbidden.

上記サイトにはちょっと無理矢理っぽい解決法が書かれているけど、引数の渡し方とかは依然不明だし、もう少し調べる。

FIXME

このウェブサイトはクッキーを使用しています。 Webサイトを使用することで、あなたはあなたのコンピュータにクッキーを保存することに同意します。 また、あなたはあなたが私たちのプライバシーポリシーを読んで理解したことを認めます。 同意しない場合はウェブサイトを離れてください。クッキーに関する詳細情報
programming/web_development/php/library/twig/macros_in_embed.txt · 最終更新: 2018/11/12 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0