Symfony Twig {{render}} 处理传递的参数:无法获得不同的值

Symfony Twig {{render}} handling passed arguments: Cannot get a different value

在模板上我做了一个 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.

我也查看了这些链接:

但我的道路上仍然没有光明。

根据

您应该像这样渲染小部件:

{{ render(controller('AppBundle:Widgets:myCapsWidget',{'somestring':someString})  }}

查看参数是如何通过控制器方法传递的