在 Symfony 堆栈之外使用 UniqueEntity



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

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

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

我的第二个问题是,如果我无法使用UniqueEntity,我的下一个最佳选择是什么?我正在使用Symfony Validator组件,并希望使用插入到该组件中的东西来将其全部保留在同一个代码块中。

您可以将 UniqueEntity 与 Silex 一起使用。

这是包含 DoctrineManagerRegistry实现的服务提供程序包 - saxulum/saxulum-doctrine-orm-manager-registry-provider。您还可以在自述文件中找到如何将其与UniqueEntity验证器一起使用的说明。

但是你可能想实现你自己的UniqueEntity验证器。

例如,如果你想验证DTO对象(或任何非实体对象),因为它不受Symfony的UniqueEntity验证器支持(参见GitHub上的问题)。

最新更新