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

标签 python django postgresql

我有一个使用 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/

相关文章:

mysql - 从Mysql到postgresql的数据迁移

python - scipy.io.savemat 如何保存全局变量?

python - 使用 Wave 模块搜索 2GB WAV 文件中的丢失情况

python - 根据 Pandas 另一个选项卡中的匹配项更改值

javascript - 当鼠标在框上时停止动画并在鼠标移出时将其动画回来,不起作用

postgresql - 清除删除列的 postgres 知识

java - 用截击发送对象

python - 使用 Seaborn 将一维时间序列绘制为一条线,并沿 y 轴绘制边缘直方图

javascript - 我如何使用 Axios 发布到 Django?

django - 使用 Django 1.5 进行身份验证