如何定义验证组并使用它

3.4 版本
维护中的版本

如果你的(表单)对象想利用验证分组,你需要指定表单使用哪个校验组:

1
2
3
$form = $this->createFormBuilder($users, array(
    'validation_groups' => array('registration'),
))->add(...);

如果你正通过[表单类]来创建表单(/doc/current/forms.html#catalog17 "book Creating Form Classes")(很好的实践),你需要添加以下内容到getDefaultOptions()方法中:

1
2
3
4
5
6
7
8
use Symfony\Component\OptionsResolver\OptionsResolver;
 
public function configureOptions(OptionsResolver $resolver)
{
    $resolver->setDefaults(array(
        'validation_groups' => array('registration'),
    ));
}

在这两种情况下,只有registration验证组将被用于验证底层对象(underlying object,即指表单对应的entity对象)。

本文,包括例程代码在内,采用的是 Creative Commons BY-SA 3.0 创作共用授权。

登录symfonychina 发表评论或留下问题(我们会尽量回复)