在route.yml中,我在每条路由中都指定了_locale参数,我认为这一定是简化这种情况的方法。
I have in my routing.yml specified the parameter _locale requirements in every single route and I think that must be something to simplify this situation.
routing.yml
routing.yml
ProjectBaseBundle_index: pattern: /{_locale} defaults: { _controller: ProjectBaseBundle:Default:index } requirements: _locale: en|es ProjectBaseBundle_privacy: pattern: /privacy/{_locale} defaults: { _controller: ProjectBaseBundle:Default:privacy } requirements: _locale: en|es ..... ProjectBaseBundle_legal: pattern: /legal/{_locale} defaults: { _controller: ProjectBaseBundle:Default:legal } requirements: _locale: en|es我正在使用Symfony2.1 beta 3
I am using Symfony2.1 beta 3
是否可以为我的所有路线指定全局_locale要求?
推荐答案我发现了一种方法:
使用主路由导入路由配置。由于我的捆绑包通常包含太多信息,因此我一直将控制器,资源和路由分隔在不同的模块中。这种方法的结果是,我发现了这一点:
Using a "master" routing to import the routing config. As my bundles usually have too much information, I have been separating the controllers, resources and routes in differents "modules". As result of that approach, I have discovered this:
主路由.yml
ProjectBaseBundle_default: resource: "@ProjectBaseBundle/Resources/config/routing-default.yml" prefix: /{_locale}/project/ requirements: _locale: en|es|de|fr子路由- default.yml
ProjectBaseBundle_default_privacy: pattern: /privacy defaults: { _controller: ProjectBaseBundle:Default:privacy } ProjectBaseBundle_default_legal: pattern: /legal defaults: { _controller: ProjectBaseBundle:Default:legal } ProjectBaseBundle_default_usage: pattern: /usage defaults: { _controller: ProjectBaseBundle:Default:usage }通过此路由配置,我将需要编写语言环境要求的地方减至最少。
With this routing config, I minimize the places where need to write the locale requirements.
更多推荐
Symfony2 Route全局{
发布评论