繁体   English   中英

/django.db.utils.IntegrityError:NOT NULL约束失败/在python manage.py之后迁移应用程序零

[英]/django.db.utils.IntegrityError: NOT NULL constraint failed/ after python manage.py migrate app zero

我在生产和本地迁移时遇到了一些麻烦。 最后情况是,在生产中只有初始迁移,而且当地有8次迁移或其他东西。 所以我决定使用

python manage.py migrate app zero 

在生产和localy(django 1.8.7)。 在生产中它起作用但在本地它引发了错误,这在makemigrationsmigrate命令之后没有出现。

django.db.utils.IntegrityError: NOT NULL constraint failed: app_userprofile__new.phone_number

在几次尝试尝试不同的事情之后,错误也开始出现在迁移命令之后。

模型本身:

class UserProfile(models.Model):
    user = models.OneToOneField(User)
    phone_number = models.IntegerField(null=True, blank=True, default=None)

检查您的本地数据库。

当一个或多个记录不符合NOT NULL要求时,通常会发生此错误

    UserProfile.objects.filter(phone_number=None)

您可以通过填写找到的对象的phone_number字段来解决此问题

或者删除没有填充phone_number的对象

UPDATE

使用database migrations管理数据库更改可以防止此类情况

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM