Fügen Sie mehr als einen Parameter im Zweigpfad hinzu

106

Wie füge ich mehr als einen Parameter zum Zweigpfad hinzu?
Angenommen, Sie haben diese Route:

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

Sie können dies in Ihrer Zweigvorlage tun:

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

aber was ist, wenn Sie dies in Ihrer Routing-Datei haben:

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

Es sieht so aus, als hätten sie dies in ihrer Dokumentation nicht behandelt.

Wissem
quelle
1
Haben Sie vor dem Projekt die Vermutung ("?") Verpasst?
Jean-Luc Barat

Antworten:

183

Sie können so viele Argumente übergeben, wie Sie möchten, und diese durch Kommas trennen:

{{ path('_files_manage', {project: project.id, user: user.id}) }}
Elnur Abdurrakhimov
quelle
8

Überlegen Sie, wie Sie Ihre Route erstellen möchten:

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

da sie Pflichtfelder sind. Dadurch wird Ihre URL hübscher und einfacher zu verwalten.

Ihr Controller würde dann so aussehen

 public function projectAction($project, $user)
Tac Tacelosky
quelle