Я пытаюсь изменить стандартную локаль моего приложения. Вещи, которые я пробовал до сих пор:
app/config/parameters.ini
Вот реализация. Класс Locale, похоже, не перезаписывается, поскольку вызов \Locale::getDefault()
не выполняет этот метод.
<?php use Symfony\Component\Locale\Stub\StubLocale; class Locale extends StubLocale { static public function getDefault() { return 'et_EE'; } }
После того, как все описанные методы описаны, \Locale::getDefault()
все еще возвращает en
. Мне нужно, чтобы он возвращал et_EE
чтобы отображать виджеты формы, такие как страна или язык, в правильной локали.
Как мне это сделать? Будучи способным поддерживать несколько локалей, также было бы здорово. Благодарю.
В Symfony 2.0:
# app/config/config.yml framework: session: { default_locale: en }
В Symfony 2.1+:
# app/config/config.yml framework: default_locale: en
В Symfony 2.0 вы также можете установить default_locale
для сеанса:
framework: translator: { fallback: %locale% } ... session: default_locale: %locale% auto_start: true
%locale%
– переменная, и она разрешена из файла parameters.ini
.