首页 > 解决方案 > 在没有 FormType 的情况下动态更改实体断言约束

问题描述

所以问题是这样的:

我正在尝试从 API 中保存一些数据,我需要使用 Symfony 验证来验证它们:

private $id;

    /**
     * @var
     * @Assert\Length(max="255")
     * @CustomAssert\OrderExternalCode()
     * @CustomAssert\OrderShipNoExternalCode()
     */
    private $code;

    private $someId;

    /**
     * @var
     * @Assert\NotBlank()
     * @Assert\Length(max="255")
     */
    private $number;

这很好用,但现在我需要从控制器动态添加一些断言约束,这就是我卡住的地方!

有谁知道如何做到这一点或任何可能有帮助的建议?

目前我做了一个额外的约束,它在数据库中进行额外的查询,我不想这样做,我没有使用 FormType。

标签: phpsymfonyvalidationentity

解决方案


您可以使用groups和使用(或省略)您正在谈论的额外组。


推荐阅读