我有一个使用 PostgreSQL 数据库的 Django 应用程序,其中用户迁移有一个带有 unique=True
的电子邮件字段。我的 User
模型有:
email = models.EmailField(_('email address'), unique=True, blank=True)
我希望能够使用空白电子邮件创建多个用户,但是当电子邮件不是空白时,它必须是唯一的。目前,当我使用空白电子邮件创建两个用户时,出现此错误:
duplicate key value violates unique constraint "accounts_user_email_b2644a56_uniq"
编辑:我已将其添加到 User
模型中的 save
方法中:
if not self.email:
self.email = None
最佳答案
唯一约束将允许多行值为 null
,但不允许多行值为空字符串。
因此,您应该在该字段上设置null=True
,然后设置email=None
而不是email=""
。
关于python - 使用空白电子邮件添加多个 Django 用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53557730/