2

我已经阅读了有关新功能的信息: symfony 4.3自动验证 https://symfony.com/blog/new-in-symfony-4-3-automatic-validation 所以 Doctrine 注释应该足够了,无需显式手动添加验证器注释(如@Assert\NotNull()..)但是我不明白如何使它工作。我有 symfony 4.3 应用程序,当前创建实体,真的不想手动添加验证器注释,而是使用这个新的自动验证功能。我是 Symfony 的新手,请详细说明。

//$post is Entity with title notNull property
$errors = $validator->validate($post);

/**
     * @var string
     *
     * @Assert\NotNull()
     * @ORM\Column(name="title", type="string", length=10, nullable=false)
     */

它应该在没有明确添加的情况下工作, @Assert\NotNull()但它没有

4

1 回答 1

3

https://symfonycasts.com/screencast/symfony-forms/assert-validation

答案在https://symfonycasts.com/screencast/symfony-forms/assert-validation 见对话。简要 config/packages/validator.yaml 像:

框架:验证:email_validation_mode:html5

    # Enables validator auto-mapping support.
    # For instance, basic validation constraints will be inferred from Doctrine's metadata.

这里!取消注释下面的 2 行,自动验证应该可以工作

    auto_mapping:
        App\Entity\: []
于 2019-08-02T14:39:14.063 回答