В настоящее время я пишу некоторые расширения в ветке, но мне трудно решить, почему определенное расширение должно быть реализовано в виде тега или функции.
Документация Twig перечисляет следующие 2конструкции и что они делают:
{{ }}
: используется для печати результата вычисления выражения; {% %}
: используется для выполнения операторов.
Я планирую внедрить что-то похожее на встроенные контроллеры symfony2 .
Почему эта функция реализована следующим образом:
{% render "AcmeDemoBundle:Demo:fancy" with { 'name': name, 'color': 'green' } %}
Поскольку встроенные контроллерыфункция должна возвращать полностью визуализированный шаблон для запрошенного контроллера, не будет ли функция более подходящей?
render("AcmeDemoBundle:Demo:fancy", { 'name': name, 'color': 'green' });