Agregue más de un parámetro en la ruta Twig


106

¿Cómo agregar más de un parámetro en la ruta Twig?
Digamos que tienes esta ruta:

article_show:
    pattern:  /article/{slug}
    defaults: { _controller: AcmeArticleBundle:Article:show }

Puedes hacer esto en tu plantilla de ramitas:

{{ path('article_show', { 'slug': article.slug }) }}

pero qué pasa si tienes esto en tu archivo de enrutamiento:

_files_manage:
    pattern: /files/management/project={idproject}&user={iduser}
    defaults: { _controller: AcmeTestBundle:File:manage }

Parece que no cubrieron esto en su documentación.


1
¿No adivinaste ("?") Antes del proyecto?
Jean-Luc Barat

Respuestas:


183

Puede pasar tantos argumentos como desee, separándolos por comas:

{{ path('_files_manage', {project: project.id, user: user.id}) }}

8

Considere hacer su ruta:

_files_manage:
    pattern: /files/management/{project}/{user}
    defaults: { _controller: AcmeTestBundle:File:manage }

ya que son campos obligatorios. Hará que su URL sea más bonita y será un poco más fácil de administrar.

Su controlador se vería así

 public function projectAction($project, $user)
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.