2011-08-08 66 views
25

有沒有更好的方法來在註釋路由中定義可選參數,然後定義2個註釋?通過註釋定義的路由中的可選參數

我是這樣做的:

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

我見過的註解類有一個名爲「默認」領域,但我安靜不知道有關語法

THX

回答

42

的Symfony有一個網頁@Route

也許你可以試試。

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

如果null不起作用請嘗試一個空字符串。

+0

作爲allways它只是一個知道在哪裏可以找到信息的問題。我以前從未查看過捆綁引用。 thx – room13

+5

我會問同樣的事情..但如果你有多個空或空字符串的默認值,它會創建像/ 1/EN /// 1234/23路徑和Symfony抱怨沒有匹配的路線。 – Hades