在 Symfony/Twig 路径函数中作为参数调用的函数
A function call as argument in Symfony/Twig path function
我有这样的路线:
/**
* @Route("/admin/user/edit/{id}", defaults={"id" = 0}, name="admin_user_edit")
* @Route("/admin/user/edit")
*
*/
public function editAction(Request $request, $id = 0){
(...)
然后是一个 Twig 模板,我在其中列出了所有用户:
{% for user in users %}
<li>
<a href='{{ path('admin_user_edit'),{'id' : user.getId()} }}'>
{{ user.getUsername() }}
</a>
</li>
{% endfor %}
如您所见,我正在尝试将 'user.getId()' 作为 ID 传递。我明白了:
Unexpected token "punctuation" of value "," ("end of print statement"
expected) in admin/users/list.html.twig at line 5.
我知道这是关于这个 user.getId() 因为在我添加这段代码之前一切都很好。
那么如何将函数结果传递给此 "path" 函数?
你的路径函数应该有路由名称和括号内的参数,如
{{ path('admin_user_edit', {'id' : user.getId() }) }}
此外,由于您没有在 user.getId()
调用中使用参数,您可以只使用 user.id
。
我有这样的路线:
/**
* @Route("/admin/user/edit/{id}", defaults={"id" = 0}, name="admin_user_edit")
* @Route("/admin/user/edit")
*
*/
public function editAction(Request $request, $id = 0){
(...)
然后是一个 Twig 模板,我在其中列出了所有用户:
{% for user in users %}
<li>
<a href='{{ path('admin_user_edit'),{'id' : user.getId()} }}'>
{{ user.getUsername() }}
</a>
</li>
{% endfor %}
如您所见,我正在尝试将 'user.getId()' 作为 ID 传递。我明白了:
Unexpected token "punctuation" of value "," ("end of print statement" expected) in admin/users/list.html.twig at line 5.
我知道这是关于这个 user.getId() 因为在我添加这段代码之前一切都很好。
那么如何将函数结果传递给此 "path" 函数?
你的路径函数应该有路由名称和括号内的参数,如
{{ path('admin_user_edit', {'id' : user.getId() }) }}
此外,由于您没有在 user.getId()
调用中使用参数,您可以只使用 user.id
。