ins*_*ere 4 routes symfony twig
我有一个带可选参数的路由:
/**
* @Route( "/route/{id}", name="_route", defaults={"id" = ""} )
* @Template()
*/
Run Code Online (Sandbox Code Playgroud)
在模板中我有一个表单,我希望将表单发送到:
/route
Run Code Online (Sandbox Code Playgroud)
要么:
/route/10
/route/10/mail – if there were more than just one parameter
Run Code Online (Sandbox Code Playgroud)
目前我正在解决这个问题:
{{ path(app.request.attributes.get('_route')) }}/{{ object.id }}
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,但我必须自己添加所有可能的参数.有没有办法从树枝内获得完整的当前路径?我不想在我的控制器中添加额外的变量来发送到模板.
Mae*_*lyn 17
这个Request班有一个getRequestUri()方法.你可以像树枝一样访问它
{{ app.request.requesturi }}
Run Code Online (Sandbox Code Playgroud)
还有一种方法(不确定它是否是一种好的做法):
{{ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) }}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,您可以添加一个额外的参数:
{{ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')|merge({'p': 10})) }}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12196 次 |
| 最近记录: |