0

我对 symfony 1.4 验证器有疑问

我想编写自己的验证器,但我有一个小问题。

我的错误信息与表单配置中的值相同

我的代码

class sfValidatorDefaultString extends sfValidatorString{

  protected function configure($options = array(), $messages = array())
  {
    parent::configure($options, $messages);

    $this->addMessage('default_string', 'Error message');

    $this->addOption('default_string');
  }
  protected function doClean($value)
  {
    $clean = parent::doClean($value);

    // tutaj utknąłem 
    if(in_array($value, $this->getOptions('default_string')))
    {
         throw new sfValidatorError($this, 'default_string', array('value' => $value['name'], 'default_string' => $this->getOption('default_string')));
    }

    return $clean;
  }
}
4

1 回答 1

0

当您在表单上遇到错误时,您总是有相关的小部件(此处name)和该小部件的错误消息(此处Error message)。

如何在模板中显示错误?使用自定义方式还是通常的方式(使用<?php echo $form ?>)?

对于addMessageand sfValidatorError,当 symfony 抛出sfValidatorError第二个参数是错误代码。它将尝试查找您在配置中明确定义的此错误代码的消息:

$this->addMessage('default_string', 'Error message');
于 2012-04-17T11:54:44.333 回答