Zend переместил конфигурацию переводчика из module.config.php в Module.php - PullRequest
0 голосов
/ 29 ноября 2018

Я довольно новичок в ZF и у меня есть вопрос, касающийся конфигурации переводчика.У меня есть приложение со следующей конфигурацией переводчика внутри файла module.cofig:

'translator'         => [
    'locale' => 'ru_RU',
    'translation_file_patterns' => [
        [
            'type' => 'gettext',
            'base_dir' => __DIR__ . '/../language',
            'pattern' => '%s.mo',
        ],
        [
            'type' => 'phparray',
            'base_dir' => __DIR__ . '/../language',
            'pattern' => '%s.php',
        ],
    ],
    'cache' => \Zend\Cache\StorageFactory::factory(
        [
        'adapter' => [
            'name'    => 'Filesystem',
            'options' => [
                'cache_dir' => APPLICATION_LOAD_PATH . '/data/cache',
                'ttl'       => '3600',
            ],
        ],
        'plugins' => [
            [
                'name'    => 'serializer',
                'options' => [],
            ],
            'exception_handler' => [
                'throw_exceptions' => true,
            ],
        ],
        ]
    ),
],

Эта конфигурация работает нормально, но я хочу знать, возможно ли переместить этот код в Module.php через getTranslatorPluginConfig().Я попытался использовать этот метод и вернуть ту же самую конфигурацию:

public function getTranslatorPluginConfig(){
    return [
        'translator'         => [
            'locale' => 'ru_RU',
            'translation_file_patterns' => [
                [
                    'type' => 'gettext',
                    'base_dir' => __DIR__ . '/language',
                    'pattern' => '%s.mo',
                ],
                [
                    'type' => 'phparray',
                    'base_dir' => __DIR__ . '/language',
                    'pattern' => '%s.php',
                ],
            ],
            'cache' => \Zend\Cache\StorageFactory::factory(
                [
                    'adapter' => [
                        'name'    => Filesystem::class,
                        'options' => [
                            'cache_dir' => APPLICATION_LOAD_PATH . '/data/cache',
                            'ttl'       => '3600',
                        ],
                    ],
                    'plugins' => [
                        [
                            'name'    => 'serializer',
                            'options' => [],
                        ],
                        'exception_handler' => [
                            'throw_exceptions' => true,
                        ],
                    ],
                ]
            ),
        ],
    ];
}

Как видите, я ничего не изменил (кроме пути base_dir).Я не получаю никаких ошибок, но переводчик не работает вообще.Если вы можете сказать мне, какие шаги мне нужно предпринять, чтобы заставить эту конфигурацию работать из файла модуля, и если это вообще возможно, я буду благодарен.Я не ожидаю простого кода, а просто руководство / предложение того, что можно сделать, так как все, что я нахожу в документации Zend, связано с выполнением этой конфигурации внутри module.config.Заранее спасибо.

...