2012-03-24 11 views
1

私はフォーム 'ChallengeType'を持っています。これらのフィールドを持っている:バインドされていないフィールドを検証する方法

1)組み込みフォームteam1
入力フィールドのユーザー名

2)組み込みフォームteam2
入力フィールドのユーザー名

3)
チャレンジフィールドを配置し

4 )日付
チャレンジフィールド

各チームのユーザ名フィールドはTeamTypeクラスで次のように設定されています

public function buildForm(FormBuilder $builder, array $options) 
{ 
    $builder 
     ->add('player_one', 'fos_user_username', array(
      'property_path' => false, 
      'attr' => array('class' => 'player_autocomplete') 
     )) 
    ; 
} 

property_pathがfalseに設定されているため、このユーザ名フィールドが結合していないです。

入力したユーザー名が既存のものであることを確認するために、このフィールドを検証したいと思います。どうすればいいですか?

答えて

3

あなたは道に

$builder-> addValidator(new CallbackValidator(function(FormInterface $form){ 
    $player_one = $form['player_one']; 
    //validate 
     //validation failed? 
     $form['player_one']->addError(new FormError("error message")); 
}); 
に従うことによってそれを行うことができます
関連する問題