在Symfony堆栈之外使用UniqueEntity

时间:2017-08-29 02:56:24

标签: doctrine-orm unique silex symfony-validator

我有一个建立在Silex之上的应用程序,我使用Doctrine作为我的ORM。

我有一个问题,我试图在用户尝试重用电子邮件时遇到一个干净的错误,我找到了验证器UniqueEntity,但它似乎是为Symfony的完整堆栈版本设计的。

我的问题是,这是真的吗?我正准备好并假设它,因为我没有找到任何在Symfony之外成功使用它的人。

我的第二个问题是,如果我无法使用UniqueEntity,那么我的下一个最佳选择是什么?我正在使用Symfony Validator组件,并希望使用插入其中的内容将所有内容保存在同一代码块中。

1 个答案:

答案 0 :(得分:0)

您可以在Silex中使用UniqueEntity。

以下是包含Doctrine (1.0 * matches / (matches + mismatch) * 100) ^^^ (double(matches) / (matches + mismatch) * 100) ^^^^^^^ ^ 实施的服务提供程序包 - saxulum/saxulum-doctrine-orm-manager-registry-provider。您还可以在README中找到与ManagerRegistry验证程序一起使用的说明。

但您可能希望实施自己的UniqueEntity验证工具。

例如,如果要验证DTO对象(或任何非实体对象),因为Symfony的UniqueEntity验证器不支持它(请参阅GitHub上的issue)。