1

我对验证组有疑问。

创建用户时:

  • 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 个字符。

4

1 回答 1

1

默认组不应该Default与 capital一起使用D吗?

于 2013-09-03T16:50:10.590 回答