今天我遇到了表格收集验证的奇怪问题(symfony 2.7.3)
我将validation.yml配置为验证BusinessTrip表单。此表单包含一个包含BusinessTripUser表单集合的字段,用于指定用户及其商务旅行目标。
问题:
当我尝试保存BusinessTrip表单并添加了几个用户时,有一个验证错误说'我必须为此商务旅行指定最少一个用户(计数约束)。 但是已经有几个用户了。
如果我禁用Count约束(在validation.yml中注释它)一切正常,用户可以使用Valid约束成功验证。但我需要这个验证。 也许某人已经遇到并解决了这个问题?
来源:
OQ\BusinessTripBundle\Entity\BusinessTrip:
properties:
users:
- Valid: ~
- Count:
min: 1
minMessage: Specify at least one employee
OQ\BusinessTripBundle\Entity\BusinessTripUser:
properties:
description:
- NotBlank:
message: Specify the employee role in this business
user:
- NotNull:
message: Specify the employee
答案 0 :(得分:0)
解决
我项目的客户端验证机制(jQuery Validate Plugin)无法正确处理集合字段的Count约束。所以,这不是一个symfony问题。
现在我通过getter约束和相应的方法实现了这个检查,检查ArrayCollection中是否存在任何用户。这个检查工作完美,但在后端。