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 ?>)を使用していますか?

addMessageとの場合sfValidatorError、symfonyがスローするときsfValidatorError、2番目のパラメーターはエラーコードです。設定で明確に定義したこのエラーコードのメッセージを見つけようとします。

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