Подтвердить что ты не робот

Необязательные параметры в маршрутах, определенных через аннотации

существует ли более элегантный способ определения необязательных параметров в аннотированных маршрутах, а затем для определения двух аннотаций?

Вот как я это сделал:

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

Я видел, что класс аннотации имеет поле с именем "defaults", но я не уверен в синтаксисе

ТНХ

4b9b3361

Ответ 1

У Symfony есть страница на @Route:

Например, возможно, вы можете попробовать.

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

Если null не работает, попробуйте пустую строку.