使用空白电子邮件添加多个 Django 用户

我有一个使用 PostgreSQL 数据库的 Django 应用程序,其中用户迁移有一个带有unique=True. 我的User模型有:

email = models.EmailField(_('email address'), unique=True, blank=True)

我希望能够使用空白电子邮件创建多个用户,但是当电子邮件不是空白时,它必须是唯一的。目前,当我使用空白电子邮件创建两个用户时,出现此错误:

重复键值违反唯一约束“accounts_user_email_b2644a56_uniq”

编辑:我已将此添加到模型中的save方法中User

if not self.email:
    self.email = None


翻翻过去那场雪
浏览 133回答 1
1回答

哆啦的时光机

唯一约束将允许具有 value 的多行null,但不允许具有 value 空字符串的多行。因此,您应该null=True在字段上设置,然后设置email=None而不是email=""。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python