Twig 使用 [] 获取 url 参数
Twig get url parameter with []
我有一个 url 喜欢:MYURL?filter[_per_page]=25&filter[name][value]=hello
如何使用 twig 获取这些参数?
我正在尝试 {{ app.request.get('filter[_per_page]') }}
但它总是空的...
谢谢!
编辑:我在 javascript 中,我想将此结果分配给 javascript 变量,例如:var param = "{{ app.request.get('filter[_per_page]') }}";
你快搞定了。
app
对象是 GlobalVariables
实例。当您说 app.request
时,正在调用 getRequest()
并且 returns 是标准 Request
对象的实例。
现在,如果您查看 Request::get()
(link),则有:
get(string $key, mixed $default = null, bool $deep = false)
我想你需要做的是:
{{ app.request.get('filter[_per_page]', NULL, true) }}
其中NULL
为默认值,true
表示deep
遍历Request
对象
您必须将访问 filter
元素的数组管理为:
{{ app.request.get('filter')['_per_page'] }}
(这次发帖前试了一下...)
我找到了这样的解决方案:
app.request.attributes.get('request').query.get('param_name')
要访问查询参数数组,您可以使用:
app.request.attributes.get('_route_params');
您可以在documentation上看到不同的解决方案。
我有一个 url 喜欢:MYURL?filter[_per_page]=25&filter[name][value]=hello
如何使用 twig 获取这些参数?
我正在尝试 {{ app.request.get('filter[_per_page]') }}
但它总是空的...
谢谢!
编辑:我在 javascript 中,我想将此结果分配给 javascript 变量,例如:var param = "{{ app.request.get('filter[_per_page]') }}";
你快搞定了。
app
对象是 GlobalVariables
实例。当您说 app.request
时,正在调用 getRequest()
并且 returns 是标准 Request
对象的实例。
现在,如果您查看 Request::get()
(link),则有:
get(string $key, mixed $default = null, bool $deep = false)
我想你需要做的是:
{{ app.request.get('filter[_per_page]', NULL, true) }}
其中NULL
为默认值,true
表示deep
遍历Request
对象
您必须将访问 filter
元素的数组管理为:
{{ app.request.get('filter')['_per_page'] }}
(这次发帖前试了一下...)
我找到了这样的解决方案:
app.request.attributes.get('request').query.get('param_name')
要访问查询参数数组,您可以使用:
app.request.attributes.get('_route_params');
您可以在documentation上看到不同的解决方案。