在模板上我使用render
方法:
{% set someString = "non-default" %}
{{ render(controller('AppBundle:Widgets:myCapsWidget'),{'somestring':someString}) }}
在控制器上我有以下方法:
public function myCapsWidgetAction()
{
//@todo: access the passing parameter
}
我的问题是如何访问somestring
参数?我试着做
public function myCapsWidgetAction($somestring="default")
{
return new Response(strtoupper($somestring));
}
然后通过xdebug我注意到传递的参数是default
而不是non-default
。
我也查看了这些链接:
但我的道路上仍然没有光明。
答案 0 :(得分:1)
根据Symfony Twig {{render}} handling passed arguments
您应该像以下一样呈现小部件:
{{ render(controller('AppBundle:Widgets:myCapsWidget',{'somestring':someString}) }}
查看参数如何通过控制器方法传递