ZF2中Zend_Validation的翻译

时间:2012-08-29 14:18:01

标签: zend-form zend-framework2 zend-validate

我在Zend Framework 2中遇到了一个奇怪的问题。我使用了Zend Skeleton Application(https://github.com/zendframework/ZendSkeletonApplication)并添加了PhlyContact作为供应商模块(https://github.com/weierophinney) / PhlyContact)。我将Translation-Type更改为PhpArray,以便我可以使用位于ZF2-Dist的resources-dir中的Zend_Validate.php。

所有内容都转换为验证消息:/所以我想我错过了一些东西:

  • 我必须将译者传递给Zend_Validate(但是如何以及在哪里?)
  • 翻译应使用文本域,但不能

当我在ZF1中记得正确时,你必须将Translator设置为默认值以将其传递给Zend_Validate。关于那个的任何想法!?

2 个答案:

答案 0 :(得分:1)

看看这些方法

\Zend\Validator\AbstractValidator::setDefaultTranslator();
\Zend\Validator\AbstractValidator::setDefaultTranslatorTextDomain();

答案 1 :(得分:0)

您甚至可以只使用一行(第二个参数是文本域):

AbstractValidator::setDefaultTranslator($translator, 'default');

Module.php中的示例:

use Zend\Validator\AbstractValidator;

class Module 
{

    public function onBootstrap(MvcEvent $e) 
    {
        $translator = ....
        AbstractValidator::setDefaultTranslator($translator, 'default');
    }
}