webentwicklung-frage-antwort-db.com.de

Fügen Sie mehr als einen Parameter in Twig path ein

Wie füge ich mehr als einen Parameter in Twig path ein?
Angenommen, Sie haben diese Route:

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

Dies können Sie in Ihrer Vorlage twig:

{{ 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 nicht in ihrer Dokumentation behandelt.

99
Wissem

Sie können beliebig viele Argumente übergeben und durch Kommas trennen:

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

Überlegen Sie, wie Sie Ihre Route gestalten sollen:

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

da sie Pflichtfelder sind. Dadurch wird Ihre URL hübscher und die Verwaltung etwas einfacher.

Dein Controller würde dann so aussehen

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