使用twig从视图中获取http referer URI

Man*_*ari 1 symfony twig

我想在Twig中知道用户来自哪个URI.例如:

  1. 用户位于页面/ en /使用条款('app_default_terms')
  2. 用户点击登录
  3. 在注册页面上有一个隐藏的输入,用于将用户从他来的地方发回 <input type="hidden" name="_target_path" value="{{ get_uri_from_where_he_came() }}" />

  4. 他提交表格并被寄回.

我的问题是,这个枝条功能是什么?

Hea*_*eah 10

使用symfony框架,您可以访问一个特殊的全局变量app,该变量将请求保存在其他属性中.

请参阅http://symfony.com/doc/current/book/templating.html#global-template-variables

所以你可以使用类似的东西:

{% set referer = app.request.server.get('http-referer')|default('/') %}

<input type="hidden" name="_target_path" value="{{ referer }}" />
Run Code Online (Sandbox Code Playgroud)

  • 小细节:在Symfony 3.1(可能是3.2?)中,它不是http-referer而是HTTP_REFERER (4认同)