symfony - 通过注解定义的路由中的可选参数

标签 symfony

有没有更优雅的方法来定义带注释的路由中的可选参数然后定义 2 个注释?

这是我如何做到的:

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

我已经看到注释类有一个名为“defaults”的字段,但我不确定语法

谢谢

最佳答案

Symfony 在 @Route 上有一个页面:

例如,也许您可​​以尝试。

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

如果 null 不起作用,请尝试使用空字符串。

关于symfony - 通过注解定义的路由中的可选参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6983264/

相关文章:

apache - Symfony .htaccess 为 app_MYNAME.php 添加规则

symfony - 如何导入多个宏?

javascript - Symfony Webpack Encore 与公司公共(public) bundle

symfony2 : define several php constants in bundle

php - Symfony2 注释继承

php - 如何在 Doctrine native 查询的结果中获取非映射列

javascript - AngularJS 将 Ajax 请求 POST 到 Symfony Controller

php - Doctrine 2 需要 Symfony 吗?

symfony - @route 注释覆盖另一条路线

php - 交响乐 3 : set value after submitting a form