Zend \ Form \ Form无法显示在来自自定义验证程序的错误消息中

Borje

我创建了一个自定义验证器:

class MyValidator extends AbstractValidator
{
    const ERROR_CONST = 'error';

    protected $dbAdapter;
    protected $messageTemplates = array(
        self::ERROR_CONST => "Error msg for '%value%'."
    );

    public function __construct($dbAdapter)
    {
        $this->dbAdapter = $dbAdapter;
    }

    public function isValid($value, $context = null)
    {
        $this->setValue($value);
        /**
         * Do validation against db
         */

        if(/* Not valid */){
            $this->error(self::ERROR_CONST);
            return false;
        }
        return true;
    }
}

验证工作,我已经能够对其进行测试。不起作用的是使用以下命令输出错误消息

echo $this->formElementErrors($form->get('action'));

输出的只是一个空的UL。这是翻译问题吗?当我在验证器中的$ this-> getTranslator()上执行get_class时,我得到了验证器类名。当我var_dump $ this-> getTranslator()时,它输出为null。我是否需要为此设置翻译器,在哪里设置翻译器的最佳位置是我自己的验证器整个系统?

加百列

因为您__construct为验证器类定义了一种方法,所以__construct不会隐式调用父类http : //php.net/manual/en/language.oop5.decon.php(请参阅注释)

您应该修改您的__construct方法:

public function __construct($dbAdapter)
{
    $this->dbAdapter = $dbAdapter;
    //parent::__construct($options);
    parent::__construct(null); // or (void)
}

如您所见,$messageTemplates$messageVariables从中“加载”AbstractValidator::__construct以用于某些方法(error包括在内):

https://github.com/zendframework/zf2/blob/master/library/Zend/Validator/AbstractValidator.php#L73-L79

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Zend \ Form \ Form无法显示在来自自定义验证程序的错误消息中

来自分类Dev

Zend Form无法验证浮点数

来自分类Dev

Zend Expressive:如何使用zend-form视图助手?

来自分类Dev

ZF2:试图了解Zend \ Form

来自分类Dev

Zend_Form和数据转义

来自分类Dev

Zend Form不会以à(最终)填充单词

来自分类Dev

必需的动态Zend_Form_Element_Multiselect

来自分类Dev

Zend Framework 1>确定,我编写了一个自定义验证器。我放在哪里?我的Zend_Form如何包含它?

来自分类Dev

Zend Framework 1>确定,我编写了一个自定义验证器。我放在哪里?我的Zend_Form如何包含它?

来自分类Dev

检查Zend Form文本输入中的任何错误

来自分类Dev

Zend \ Form和REST:使Zend \ Form接受部分数据以实现HTTP PATCH方法

来自分类Dev

Zend Framework 2仅显示必需的自定义验证错误消息

来自分类Dev

Zend Framework 2-如果为空,如何跳过Zend \ Form \ Element \ Time的验证

来自分类Dev

在具有Zend表现力的Zend \ Form \ Annotation \ AnnotationBuilder构建的表单上注入依赖动作

来自分类Dev

使用Zend Form保存包含ObjectSelect元素的Doctrine 2实体

来自分类Dev

使用Zend_Form_Element_Captcha-会话已经开始

来自分类Dev

如何设置Zend_Form_Element_Submit的值(zendframework 1)

来自分类Dev

Zend 2 Form View Helper不连贯转义

来自分类Dev

Zend Form元素默认值为空

来自分类Dev

如何阻止Zend_Form :: isValid删除提交按钮的值?

来自分类Dev

zend framework 1 Form-如果发生验证错误,Note元素的值将丢失

来自分类Dev

如何将自定义Form元素助手添加到Zend \ Form \ View \ Helper \ FormElement的类型图中?

来自分类Dev

Zend特定的自定义错误消息,用于多个错误

来自分类Dev

simple_form和自定义验证消息

来自分类Dev

消息:元素必须由字符串或Zend_Form_Element实例指定

来自分类Dev

动态将元素添加到Zend_Form + 500错误(内部服务器错误)

来自分类Dev

Zend Form动态显示具有受保护成员的元素

来自分类Dev

教义2-Zend Framework 2-无法与Form建立新的关联

来自分类Dev

Zend Form水化器Classmethod无法正确绑定到对象实体的问题

Related 相关文章

  1. 1

    Zend \ Form \ Form无法显示在来自自定义验证程序的错误消息中

  2. 2

    Zend Form无法验证浮点数

  3. 3

    Zend Expressive:如何使用zend-form视图助手?

  4. 4

    ZF2:试图了解Zend \ Form

  5. 5

    Zend_Form和数据转义

  6. 6

    Zend Form不会以à(最终)填充单词

  7. 7

    必需的动态Zend_Form_Element_Multiselect

  8. 8

    Zend Framework 1>确定,我编写了一个自定义验证器。我放在哪里?我的Zend_Form如何包含它?

  9. 9

    Zend Framework 1>确定,我编写了一个自定义验证器。我放在哪里?我的Zend_Form如何包含它?

  10. 10

    检查Zend Form文本输入中的任何错误

  11. 11

    Zend \ Form和REST:使Zend \ Form接受部分数据以实现HTTP PATCH方法

  12. 12

    Zend Framework 2仅显示必需的自定义验证错误消息

  13. 13

    Zend Framework 2-如果为空,如何跳过Zend \ Form \ Element \ Time的验证

  14. 14

    在具有Zend表现力的Zend \ Form \ Annotation \ AnnotationBuilder构建的表单上注入依赖动作

  15. 15

    使用Zend Form保存包含ObjectSelect元素的Doctrine 2实体

  16. 16

    使用Zend_Form_Element_Captcha-会话已经开始

  17. 17

    如何设置Zend_Form_Element_Submit的值(zendframework 1)

  18. 18

    Zend 2 Form View Helper不连贯转义

  19. 19

    Zend Form元素默认值为空

  20. 20

    如何阻止Zend_Form :: isValid删除提交按钮的值?

  21. 21

    zend framework 1 Form-如果发生验证错误,Note元素的值将丢失

  22. 22

    如何将自定义Form元素助手添加到Zend \ Form \ View \ Helper \ FormElement的类型图中?

  23. 23

    Zend特定的自定义错误消息,用于多个错误

  24. 24

    simple_form和自定义验证消息

  25. 25

    消息:元素必须由字符串或Zend_Form_Element实例指定

  26. 26

    动态将元素添加到Zend_Form + 500错误(内部服务器错误)

  27. 27

    Zend Form动态显示具有受保护成员的元素

  28. 28

    教义2-Zend Framework 2-无法与Form建立新的关联

  29. 29

    Zend Form水化器Classmethod无法正确绑定到对象实体的问题

热门标签

归档