首页 > 解决方案 > UniqueEntity 不检查更新

问题描述

使用DoctrineSymfony 4.1创建User实体UniqueEntity

/**
 * User
 * 
 * @ORM\Entity(repositoryClass="App\Repository\UserRepository")
 * @ORM\Table(name="user")
 * @UniqueEntity(
 *     fields = "email",
 *     message = "email.already_taken"
 * )
 */
class User {
    ...

执行 'UPDATE user SET email = ? 哪里 id = ?带参数 ["user22@me.world", 14]:

SQLSTATE [23000]:完整性约束违规:1062 键 'UNIQ_8D93D649E7927C74' 的重复条目 'user22@me.world'

为什么UniqueEntity不测试更新?

标签: symfonydoctrinesymfony4

解决方案


您可以将组添加到约束groups={"new", "edit"}然后以此处描述的形式使用这些组


推荐阅读