Настройка локали в kohana2 - PullRequest
       27

Настройка локали в kohana2

1 голос
/ 09 ноября 2011

Как я могу изменить локаль по умолчанию, определенную в файле locale.php в Kohana 2.3.4 во время выполнения?

Я использую Kohana :: config_set ('locale.language', array ('en', 'United States')); но после перенаправления он не работает, он получает значение по умолчанию (из locale.php).

Спасибо

1 Ответ

3 голосов
/ 09 ноября 2011

Я думаю, вам нужно сохранить ваши динамические настройки в сессии или куки. если вам нужен nedd i18n, вы можете использовать простой код в bootstrap.php :

I18n::$source = Kohana::config('my.default_language');
I18n::lang(I18n::$source);

и в / application / config / my.php :

$config['languages'] = array(
    'ru' => 'Русский',
    'en' => 'English',
    'pl' => 'Poland',
);
$config['default_language'] = 'en';

в framework / application / classes / controller / template.php :

class Controller_Template extends Kohana_Controller_Template {
    ...
    $session = Session::instance();
    if (Request::current()->param('lang') != null)
    {
        $session->set('lang', Request::current()->param('lang'));
    }
    I18n::lang($session->get('lang', I18n::$source));
...