เพิ่มพารามิเตอร์มากกว่าหนึ่งรายการในพา ธ ทวิก


107

จะเพิ่มพารามิเตอร์มากกว่าหนึ่งตัวใน Twig path ได้อย่างไร?
สมมติว่าคุณมีเส้นทางนี้:

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

คุณสามารถทำได้ในเทมเพลต Twig ของคุณ:

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

แต่ถ้าคุณมีสิ่งนี้ในไฟล์เส้นทางของคุณ:

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

ดูเหมือนว่าพวกเขาไม่ได้ครอบคลุมสิ่งนี้ในเอกสารของพวกเขา


1
คุณพลาดเดา ("?") ก่อนโปรเจ็กต์หรือไม่?
Jean-Luc Barat

คำตอบ:


184

คุณสามารถส่งผ่านอาร์กิวเมนต์ได้มากเท่าที่คุณต้องการโดยคั่นด้วยเครื่องหมายจุลภาค:

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

8

พิจารณากำหนดเส้นทางของคุณ:

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

เนื่องจากเป็นฟิลด์บังคับ จะทำให้ URL ของคุณสวยขึ้นและจัดการได้ง่ายขึ้นเล็กน้อย

ตัวควบคุมของคุณจะมีลักษณะดังนี้

 public function projectAction($project, $user)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.