我确信我之前已成功完成此操作但由于某种原因它无法正常工作。
我的项目中有一个页面,按客户的帐户状态列出客户。这不是强制性的,但可以通过URL传递状态,否则它只列出活动的客户端。
示例:
myurl.com/clients/closed
会列出所有已关闭帐户的客户。
我的路线设置如下:
app_show_clients:
path: /clients/{status}
defaults: { _controller: AppBundle:Client:showClients, status: 'active' }
requirements:
status: active|closed
在我的Twig文件中,我试图检索状态如下:
{{ app.request.get('status') }}
以便在页面标题中显示状态。
然而,这只是空白 - 尽管我写道:
{{ dump(app.request.get('status')) }}
它在var转储中为我提供了“已关闭”的值。
我在这里缺少什么?
提前致谢 迈克尔
答案 0 :(得分:1)
使用控制器正确处理请求会不会更好?
function showClientsAction($status)
{
// Do some important stuff to fetch clients matching the request
// Return array assumes @Template annotation usage
return array('clients' => $clients, 'status' => $status);
}
因此,您只需在模板中编写{{ status }}
即可。
答案 1 :(得分:0)
你是否以这种方式尝试:
{{ app.request.query.get("status") }}
答案 2 :(得分:0)
问题已经解决了 - 我把代码放在错误的地方,因此我认为它在实际使用时失败了:
{{ app.request.get('status') }}
这是正确的方法。