我已经更改了 django.contrib.auth.user 模型,我已将电子邮件 ID 设为唯一。之后我添加了一个数据迁移以反映相同-
python manage.py datamigration appname unique_password。其次是 python manage.py schemamigration appname --auto-->no changes。最后,python manage.py migrate appname。
向前迁移到 0003_unique_password
- 应用程序名称:0037_unique_password.py
现在,当我添加一个电子邮件不是唯一的用户时,它会给我一个错误,并且不允许我通过django admin创建用户。但是当我这样做时:>
python manage.py 外壳
从 django.contrib.auth.models 导入用户
- user=User('cust1','123','xxx@gmail.com') 这会创建一个用户对象,即使 'xxx@gmail.com' 已经存在。
如何为现有项目(带有数据)向 django.contrib.auth.user.email 添加唯一约束?