2013-02-05 48 views
3

我安裝了,捆綁:https://github.com/lunetics/LocaleBundle這有助於在語言之間切換。一切正常,在樹枝中,翻譯工作正常。但是當我想要翻譯控制器中的任何消息時,我會得到法語(fr)而不是定義的語言(例如en)。如何獲取Symfony 2.1控制器中的語言環境?

請問我該如何獲取控制器中當前選定的區域設置?

我使用:$this->getRequest()->getLocale()但它不起作用,它給了我每種文化的FR。在parameter.ini

我的默認設置語言爲FR

回答

0

LuneticsLocaleBundle和Symfony的2.1文件的代碼中尋找後,我discovred的是,symfony2.1是通過語言環境的路線。當從symfony創建nes請求的樹枝模板呈現動作時存在問題。所以,爲了解決這個問題,我重寫了LuneticsLocaleBundle的代碼,並且在bundle的LocaleController的switchAction中添加了$this->get('session')->set('_locale', $_locale);

因此,語言環境將存儲在會話中。

我希望能幫助你。