我对验证组有疑问。
创建用户时:
password
不能为空password
长度应介于 4 到 16 个字符之间
编辑用户时:
password
可以为空password
如果已填充,则应在 4 到 16 个字符之间
我的用户实体验证 YAML,声明create
组:
My\Entity\User:
properties:
username:
- NotBlank: ~
- Length: { min: 4, max: 12 }
email:
- Email: ~
- Length: { max: 255 }
plainPassword:
- NotBlank:
groups: [create]
- Length: { min: 4, max 16 }
据我所知,默认值是包含属于任何组的所有验证器的组(除了NotBlank
密码之外)。组create
仅包含 的NotBlank
规则plainPassword
。所以:
- 创建:
default
+create
组 - 编辑:
default
组
array('validation_groups' => array('default', 'create'))
在我的createAction
控制器操作中以及array('validation_groups' => array('default'))
何时editAction
被调用时,我很高兴。
它不起作用:编辑密码时可以为空(正确),但如果已填写,则不会发生错误 - 比如说 - 它的长度为 3 个字符。