【问题标题】:Symfony: collection validation through Valid and Count constraintsSymfony:通过 Valid 和 Count 约束进行集合验证
【发布时间】:2015-11-17 05:28:24
【问题描述】:

今天我遇到了表单集合验证的奇怪问题(symfony 2.7.3)

我已将 validation.yml 配置为验证 BusinessTrip 表单。此表单包含一个包含 BusinessTripUser 表单集合的字段,用于指定用户及其商务旅行目标。

问题:

当我尝试保存将多个用户添加到集合中的 BusinessTrip 表单时,出现验证错误,提示我必须为此出差指定至少一个用户(计数约束)。 但是已经有几个用户了。

如果我禁用计数约束(在validation.yml 中对其进行注释)一切正常,用户将通过有效约束成功验证。但我需要这个验证。 也许有人已经遇到并解决了这个问题?

来源:

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

【问题讨论】:

  • 使用调试器并调试验证器触发的原因(当他们的代码无法按预期工作时通常应该这样做)。
  • 对不起,这不是 Symfony 的问题,请看我下面的帖子

标签: validation symfony symfony-forms orocrm symfony-validator


【解决方案1】:

解决了

我的项目的客户端验证机制(jQuery Validate Plugin)无法正确处理针对集合字段的计数约束。所以,这不是 symfony 的问题。

现在我通过 getter 约束和相应的方法实现了这个检查,检查 ArrayCollection 中是否存在任何用户。而且这个检查工作完美,但在后端。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-13
    • 2012-08-17
    • 2022-07-28
    • 2018-02-07
    • 1970-01-01
    • 1970-01-01
    • 2018-04-28
    相关资源
    最近更新 更多