symfony - UniqueEntity 不检查更新
问题描述
使用Doctrine和Symfony 4.1创建User
实体UniqueEntity
/**
* User
*
* @ORM\Entity(repositoryClass="App\Repository\UserRepository")
* @ORM\Table(name="user")
* @UniqueEntity(
* fields = "email",
* message = "email.already_taken"
* )
*/
class User {
...
- 当我注册(
INSERT
)时触发错误:好 - 当我用另一个现有的电子邮件
UPDATE
更新( )用户时,我有错误:不好
执行 'UPDATE user SET email = ? 哪里 id = ?带参数 ["user22@me.world", 14]:
SQLSTATE [23000]:完整性约束违规:1062 键 'UNIQ_8D93D649E7927C74' 的重复条目 'user22@me.world'
为什么UniqueEntity
不测试更新?
解决方案
您可以将组添加到约束groups={"new", "edit"}
。然后以此处描述的形式使用这些组
推荐阅读
- playframework - Ebean 无法识别 where 子句中的加号 (+) 运算符
- c# - 我将默认 JsonSerializer 设置为 Utf8Json
- python - 当 Python 中的字符串更改时,字符串 id 不会更改。将字符添加到字符串的复杂性
- javascript - array.map() 中花括号的含义
- python - 用射击法求解自然对流方程(热量和流动)
- python - 如何将用户输入与python中json文件中的多个目录进行比较
- ssl - 如何将我当前的 SSL 证书添加到任何新的子域?
- java - Spring ws - 每个属性都返回 null
- python - Django - objects.get 返回什么
- vba - 将方法添加到类的属性