我创建了一个原本没有翻译功能的应用程序,但现在我决定添加此功能。问题是我的所有路线都是这样的:
goodbye:
pattern: /goodbye
defaults: { _controller: AcmeBudgetTrackerBundle:Goodbye:goodbye }
我希望它们现在是这样的:
goodbye:
pattern: /goodbye/{_locale}
defaults: { _controller: AcmeBudgetTrackerBundle:Goodbye:goodbye, _locale: en }
requirements:
_locale: en|bg
我真的必须这样做吗?有没有办法做更多的全局或自动,或者至少只添加一次要求,因为它们对于所有网址都是相同的?提前非常感谢!
最佳答案
使用JMS18nRoutingBundle ( documentation ) 为此目的。没有自定义加载程序,没有编码...
该 bundle 能够为所有路由添加区域设置前缀,而无需更改除 bundle 的某些配置之外的任何内容。这是让您入门最快的(也是我推荐的)解决方案。
您甚至可以翻译不同区域的现有路线。
可以在 this coderwall post 中找到快速介绍。 .
关于symfony - 向所有路由添加区域设置和要求 - Symfony2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17610234/