1

有没有办法在所有视图中为所有表单元素设置翻译文本域?例如,要翻译我的表单标签,我需要设置第一个文本域:$this->formLabel()->setTranslatorTextDomain('mytextdomain'); 我需要在每个视图中添加此代码以翻译表单标签。

所以我尝试为所有视图设置文本域,如下所示:

public function getViewHelperConfig()
{
    return array(
        // Change the View Helper Text Domain for ALL modules
        'initializers' => array(
            'injectTranslatorTextDomain' => function($helper) {
                if ($helper instanceof TranslatorAwareInterface) {
                    $helper->setTranslatorTextDomain('mytextdomain');
                }
            },
        ),
    );
}

它有效,但它重写了 AbstractValidator 消息(在我注入翻译器文本域后,默认验证消息不会被翻译)。

4

1 回答 1

1

这个问题的解决方案是为验证器和视图助手添加相同的“文本域”。“默认”也可以用于两者。

于 2013-11-22T09:00:51.920 回答