带有已翻译网址的Symfony路由器

时间:2015-12-18 23:36:25

标签: annotations twig symfony-2.3

我尝试使用注释在Symfony中构建一个路由器,其中也会翻译URL。我想将以下所有网址都路由到同一个控制器:

/over-ons
/nl/over-ons
/en/about-us

我使用以下注释路由器:

     /**
     * @Route("/{_locale}/over-ons", defaults={"_locale": "nl|en"}, requirements={"_locale": "nl"}, name="about-us")
     * @Route("/{_locale}/about-us", defaults={"_locale": "nl|en"}, requirements={"_locale": "en"}, name="about-us")
     */

但是当我通过路径生成Twig中的url时,总是使用最后一个@route而不是正确的set _locate。任何建议都会有所帮助吗?

它是否也可以从SEO中明智地支持.html behinde urls?

1 个答案:

答案 0 :(得分:0)

如果您在同一控制器方法上添加这两个注释,那么当然只使用最后一个,因为它会覆盖所有以前的注释。

如果您希望获得良好而稳固的国际化支持,建议您使用JMSI18nRoutingBundle