すべてのビューで、すべてのフォーム要素の翻訳テキスト ドメインを設定する方法はありますか? たとえば、フォーム ラベルを翻訳するには、最初のテキスト ドメインを設定する必要があります。$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 メッセージを書き換えます (トランスレータ テキスト ドメインを挿入した後、デフォルトの検証メッセージは翻訳されません)。