在 twig symfony 3.4 中获取当前用户 ID
get the current user id in twig symfony 3.4
我在 Symfony 3.4 中使用 FosUserBundle 我想获取当前用户 ID 并将其在 URL 中传递到 twig 的另一个页面,这是我的代码:
<a href="{{ absolute_url(asset('')) }}app_dev.php/ajout/{{ event.id }}/{% if is_granted("IS_AUTHENTICATED_REMEMBERED") %} {{ app.user.id|number_format }}
{% endif %}">Réserver</a>
但问题是我得到了这样的 url
http://localhost/techeventsweb/web/app_dev.php/ajout/1/%202
ID 是“%202”,而它应该是一个整数“2”
当您的应用程序会话中有一个用户时,您可以通过以下方式从 Twig 获取所有用户信息:{{ app.user }}
然后,要获取用户 ID,请使用 {{ app.user.id }}
一些评论,如果你真的想手动设置 url,这是最佳实践:
{% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
{% set url = absolute_url(asset('')) ~ 'app_dev.php/ajout/' ~ event.id ~ '/' ~ app.user.id %}
{% else %}
{% set url = "OTHER_URL" %}
{% endif %}
<a href="{{ url }}">Réserver</a>
我在 Symfony 3.4 中使用 FosUserBundle 我想获取当前用户 ID 并将其在 URL 中传递到 twig 的另一个页面,这是我的代码:
<a href="{{ absolute_url(asset('')) }}app_dev.php/ajout/{{ event.id }}/{% if is_granted("IS_AUTHENTICATED_REMEMBERED") %} {{ app.user.id|number_format }}
{% endif %}">Réserver</a>
但问题是我得到了这样的 url
http://localhost/techeventsweb/web/app_dev.php/ajout/1/%202
ID 是“%202”,而它应该是一个整数“2”
当您的应用程序会话中有一个用户时,您可以通过以下方式从 Twig 获取所有用户信息:{{ app.user }}
然后,要获取用户 ID,请使用 {{ app.user.id }}
一些评论,如果你真的想手动设置 url,这是最佳实践:
{% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
{% set url = absolute_url(asset('')) ~ 'app_dev.php/ajout/' ~ event.id ~ '/' ~ app.user.id %}
{% else %}
{% set url = "OTHER_URL" %}
{% endif %}
<a href="{{ url }}">Réserver</a>