gpt4 book ai didi

symfony - 有没有办法使用 symfony2 实体验证作为学说验证?

转载 作者:行者123 更新时间:2023-12-02 16:26:25 25 4
gpt4 key购买 nike

我正在开发一个使用几种表单的 Symfony2 应用程序。使用 Doctrine2 将表单中的数据保存到 MySQL 数据库中。我使用 Symfony 注释对实体设置了一些约束。现在,当用户无法在表单中输入适当的数据时,他会收到一条错误消息,但是,当我尝试使用 Command 对象操作相同的实体时,我不会收到任何异常或错误。

从我读到的文档来看,Symfony 和 Doctrine 的验证作为单独的机制工作,现在......有没有办法让它们作为一个整体工作?我试图避免的是为实体对象编写相同的验证,以便将它们用作前端和后端验证。谢谢。

最佳答案

当您调用 $form->isValid() 时,表单会自动验证,但如果您想验证表单外部的对象,则必须手动调用它。

在您的命令类中,只需获取 validator 服务并在保留对象之前验证您的对象。

$validator = $this->container->get('validator');
$errors = $validator->validate($myEntity);

if (count($errors) > 0) {
return new Response(print_r($errors, true));
} else {
return new Response('The entity is valid!');
}

更多内容请参见此处的文档 http://symfony.com/doc/master/book/validation.html#using-the-validator-service

关于symfony - 有没有办法使用 symfony2 实体验证作为学说验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11298066/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com