在 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 传递。我明白这个:

值 "、"("打印结束语句"的意外标记"标点符号" 预期)在第 5 行的 admin/users/list.html.twig 中。

我知道这是关于这个user.getId()的,因为在我添加这段代码之前一切都很好。

那么如何将函数结果传递给这个"路径"函数呢?

路径函数应该在括号内具有路由名称和参数,例如

{{ path('admin_user_edit', {'id' : user.getId() }) }}

此外,由于您没有在user.getId()调用中使用参数,因此您可以改用user.id