Aggiungi più di un parametro nel percorso Twig


107

Come aggiungere più di un parametro nel percorso Twig?
Supponi di avere questo percorso:

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

Puoi farlo nel tuo modello di ramoscello:

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

ma cosa succede se hai questo nel tuo file di routing:

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

Sembra che non lo abbiano trattato nella loro documentazione.


1
Ti sei perso l'ipotesi ("?") Prima del progetto?
Jean-Luc Barat

Risposte:


184

Puoi passare tutti gli argomenti che desideri, separandoli con virgole:

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

8

Considera l'idea di fare il tuo percorso:

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

poiché sono campi obbligatori. Renderà il tuo URL più carino e sarà un po 'più facile da gestire.

Il tuo controller apparirà quindi come

 public function projectAction($project, $user)
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.