我正在一个具有2种语言的网站上使用Symfony 2,并且我想根据用户区域设置语言更改路线模式!
例:
user_login_en:
pattern: /en/user/login.html
defaults: { _controller: SfErrorsAppBundle:User:login, _locale: en }
user_login_fr:
pattern: /fr/utilisateur/connexion.html
defaults: { _controller: SfErrorsAppBundle:User:login, _locale: fr}
在模板内部,这并不困难,我只需要将$ this-> get('session')-> getLocale()从控制器传递到模板...
要上班,我必须打电话给我的路线:
$router->generate('user_login_'.$locale, array());
但是在我的布局中,我当然有一个菜单和一个带有链接的侧边栏,所以我想让locale变量使用它!所以我的问题很简单:如何在“布局”模板中获取此变量?否则,您是否有任何想法根据语言更改模式?
原因是我想为所有用户提供漂亮的路线,无论他们是英语还是法语……而且出于搜索引擎优化的原因!
app.request.locale
改为使用。