2011-08-08 33 views
25

có cách nào thanh lịch hơn để xác định tham số tùy chọn trong các tuyến được chú thích sau đó xác định 2 chú thích không?thông số tùy chọn trong các tuyến đường được xác định thông qua chú thích

Đây là cách tôi đã làm nó:

/** 
* 
* @Route("/view/{lang}/{file}", name="legacy_translation_view_file") 
* @Route("/view/{lang}", name="legacy_translation_view") 
* @Template() 
*/ 
public function viewAction($lang,$file=null) 
{ 
    ... 
} 

tôi đã nhìn thấy rằng lớp chú thích có một trường có tên là "mặc định" nhưng tôi không im lặng chắc chắn về cú pháp

thx

Trả lời

42

Symfony có một trang trên @Route:

Ví dụ: có thể bạn có thể thử.

/** 
* @Route("/{id}/{lang}/{file}", requirements={"id" = "\d+"}, defaults={"file" = null}) 
*/ 
public function showAction($id, $lang, $file) 
{ 
} 

Nếu null không hoạt động, hãy thử một chuỗi rỗng.

+0

vì tất cả mọi người chỉ biết tìm thông tin ở đâu. tôi chưa bao giờ nhìn vào tham chiếu gói. thx – room13

+5

Tôi sẽ yêu cầu điều tương tự .. nhưng nếu bạn có nhiều giá trị mặc định của chuỗi rỗng hoặc rỗng, nó sẽ tạo đường dẫn như/1/en /// 1234/23 và Symfony than phiền về không có tuyến đường phù hợp. – Hades

Các vấn đề liên quan