如何在表单中直接验证类型?


Symfony2 - How do i validate the Type directly in the Form?

我遵循这个教程http://symfony.com/doc/current/book/forms.html#adding-validation

并添加到我的表单:

    $builder->add('email', null, array('label' =>  'userType.label.email','constraints' => array(new Email())));

这个工作很好。

但是下面的代码不起作用:

    $builder->add('phoneNumber', null, array('label' =>  'userType.label.phoneNumber','required'  => true,'constraints' => array(new Type(array('type' => 'numeric')))));

如何检查输入是否是数字,就在表单中?

By this:

->add('phoneNumber', 'integer', array('label' =>  'userType.label.phoneNumber','required'  => true));

当你传递null时,它将使用你在模型中设置的类型,这只是一种传递第三个参数而不覆盖第二个参数的方法。