3
我想創建一個鏈接,它將改變下面代碼中的locale
。Symfony3改變語言環境的鏈接
/**
*
* @Route("/changelanguage", defaults={"_locale" = "eu"}, name="changelanguage")
* @Method("GET")
*/
public function changelanguageAction(Request $request) {
$locale = $request->getLocale();
if ($locale == "eu") {
$request->setLocale('es');
$request->getSession()->set('_locale', 'es');
} else {
$request->setLocale('eu');
$request->getSession()->set('_locale', 'eu');
}
return $this->redirect($request->headers->get('referer'));
}
然後,在我的樹枝基本視圖我使用的是這樣的:
<ul class="nav navbar-nav navbar-right">
<li><a href="#">{{ app.request.locale }}</a></li>
{% if app.request.locale == "eu"%}
<li><a href="{{ path('changelanguage', {'_locale':'es'}) }}"><img src="{{ asset('bundles/app/img/espanol.png') }}" alt="Castellano"> Castellano</a></li>
{% else %}
<li><a href="{{ path('changelanguage', {'_locale':'eu'}) }}"><img src="{{ asset('bundles/app/img/euskara.png') }}" alt="Euskaraz"> Euskara</a></li>
{% endif %}
<li> p;</li>
</ul>
的問題是,它不斷地說我,app.request.locale
總是'eu'
。我錯過了什麼嗎?
我很困惑你的代碼。你試圖強制「ES」? –
我想在es和eu語言環境之間進行更改。例如,顯示帶有'es'語言環境的索引頁面,並且鏈接將顯示相同的頁面,但更改用戶語言環境並保留。 –