在我的 Symfony2 项目中,我有一个有帖子的新闻网站。这些帖子可以在不同的地区发布。当前区域(用户选择)必须是 url 的一部分。因此 URL 应如下所示:
/mag => main news site, no region selection
/mag/region1/ => posts for region 1
/mag/region2/ => ...
/mag/region1/my-news-post-slug => detail view of one post
对于新闻帖子,我使用了Sonata News Bundle。
现在我的问题是,如何将用户的区域选择添加到路由系统,而无需更改我使用的捆绑包的每个控制器和模板? 当我只是将它添加到路由配置中时
magazin:
resource: '@SonataNewsBundle/Resources/config/routing/news.xml'
prefix: /mag/{region}
我收到错误消息,因为在新闻包(和其他)的控制器和模板中生成路由时未设置此参数。我需要路由组件显然已经添加的{_format}
或路由变量之类的东西。{_locale}
是否可以添加这样的“全局”值?