[英]How to render twig macro in controller symfony 2
i can't figure out, how to render a macro in Symfony 2 controller. 我无法弄清楚,如何在Symfony 2控制器中渲染宏。 This is how i can render a twig template
这就是我如何渲染树枝模板
$this
->get("twig")
->render("AcmeBundle:Product:table.html.twig", array(
"product" => $product
))
;
So i searching for something similar, but for rendering a twig macro. 所以我搜索类似的东西,但渲染一个树枝宏。 Thx for any suggestions!
感谢任何建议!
Twig macro's are something inside a template. Twig宏是模板中的东西。 They are run whenever you render a template executing the macro.
只要渲染执行宏的模板,它们就会运行。
Just create another "wraper" template, which would have only that macro in it. 只需创建另一个“包装器”模板,该模板中只包含该宏。 Something like
就像是
macro.html.twig file macro.html.twig文件
{% macro sample(item) %}
{# some code here #}
{% endmacro sample #}
sample_macro_wrapper.html.twig sample_macro_wrapper.html.twig
{% from 'macro.html.twig' import sample %}
{{ sample(item) }}
controller.php Controller.php这样
public function someAction()
{
// ...........
$renderedMacro = $this->get('twig')
->render('sample_macro_wrapper.html.twig', ['item' => $item]);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.