我网站的所有路由都是基于注释来实现的。现在,我想翻译我的路由。为了实现这一点,我尝试使用捆绑包JMSI18n路由包 https://github.com/schmittjoh/JMSI18nRoutingBundle.
然而,文档没有给出任何如何为每个语言环境指定路由的示例。
这是一个带有路由的动作,如何翻译呢?
/**
* @Route("/welcome", name="welcome")
* @Template()
*/
public function welcomeAction() {
return array();
}
Thanks,
编辑后的问题
/**
* @Route("/welcome", name="welcome", defaults={"_locale" = "en"})
* @Route("/bienvenue", name="welcome", defaults={"_locale" = "fr"})
* @Route("/willkommen", name="welcome", defaults={"_locale" = "de"})
* @Template()
*/
public function welcomeAction() {
return array();
}
现在,这个新注释发生了什么:
-
所选路线始终是最后一条/willkommen
(如果更改路线顺序,所选路线仍然是最后一条)
-
the _locale
根据上面的注释设置最后一个路由的区域设置“de”。
那么,有什么建议吗?
谢谢...
我找到了解决方案。您只需设置运行以下命令
php 应用程序/控制台翻译:extract fr --bundle=MinnTestBundle
--enable-extractor=jms_i18n_routing --output-format=yml
Then, minn/TestBundle/Ressources/translations/routes.fr.yml
将生成文件。自定义您的路线翻译,就是这样!
希望它能帮助其他人...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)