检索控制器外部url传递的路由参数,symfony2



我正试图访问控制器外的slug参数。

我有一个这样的路由YML:

adgroup:
pattern:  /adgroup/{id}
defaults: { _controller: ExampleBundle:AdGroup:index }
requirements:
id: d+

和一个类似的URL:

http://example.com/adgroup/25

我需要一种方法来访问{id}变量,而无需从我的控制器中获取它,我的控制器工作得很好。然而,我正在尝试构建一个对象,它将在很大程度上依赖于Slugs的传入

到目前为止,浏览文档和很多很多例子都没有给我留下任何位置。

我尝试过的:我已经对整个Request::createFromGlobals方法进行了var_dump,它是子方法,看看它是否存储在其中。事实并非如此。

此外,由于我在开发环境中,symfony中的调试工具栏在探查器中清楚地显示了Request:id:25。

所以问题是…我如何从控制器外部获取我的slugs/slugs值?

我有太多的控制器,无法尝试从那里一个接一个地将它们传入,而通过破解URL来破解它是个坏主意。:-)

我想有什么方法我不知道访问这些?

我认为这段代码将帮助您

$params = $container->get('request')->attributes->get('_route_params');
$id = $params['id'];

最新更新