2017-12-29 25 views
0

symfonyの検証に問題があります。 エンティティにNotBlankまたはLengthを追加した後、検証では欠損値の標準メッセージ(デフォルトのメッセージNotBlank)が表示されます。フィールドが満たされているかどうかにかかわらず。symfony検証が機能しない

namespace AppBundle\Entity; 
use Doctrine\ORM\Mapping as ORM; 
use Doctrine\ORM\Mapping\JoinColumn; 
use Doctrine\ORM\Mapping\OneToOne; 
use Symfony\Component\Validator\Constraints as Assert; 

class Employee 
{ 
    /** 
    * @var string 
    * 
    * @ORM\Column(name="name", type="string", length=30) 
    * @Assert\NotBlank() 
    * @Assert\Length(min="3") 
    */ 
    private $name; 

}

public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $builder 
      ->add("name", TextType::class, ['label'=>"Imie"]) 
      ->add("submit", SubmitType::class, ["label"=>"Licytuj"]); 
    } 

    /** 
    * @param OptionsResolver $resolver 
    */ 
    public function configureOprions(OptionsResolver $resolver) 
    { 
     $resolver 
      ->setDefaults 
      (
       [ 
        "data_class"=>Employee::class, 
        'attr'=>array('novalidate'=>'novalidate') 
       ] 
      ); 
    } 

答えて

1

あなたが命名の問題を持っています。メソッド名を変更してconfigureOptionsメソッドをオーバーライドします。

configureOprions =>configureOptions

0

私はあなたが投稿コードですべての問題を見つけることができませんでした。おそらく問題はあなたのコントローラコード上にあるでしょう。ほとんどの場合、検証されたフォームをフォームのロード時にビューにロードしています。理解を深めるために、使用しているコントローラとビューを追加してください。これを答えセクションに書いて申し訳ありません。

関連する問題