简体   繁体   中英

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

I had some mess with migrations in production and localy. Finally the situation was that in production there were only initial migration and localy there were 8 migrations or something. So I decided to use

python manage.py migrate app zero 

both in production and localy(django 1.8.7). In prodcution it worked but locally it raised error which didn't appear before after makemigrations or migrate command.

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

after few attempts to try different things, the error began to appear after migrate commands too.

The model itself :

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

Check your local database.

This error usually happens when one or more records do not meet the NOT NULL requirement

    UserProfile.objects.filter(phone_number=None)

You can resolve this by filling the phone_number field of the objects found

Or deleting objects that do not have filled phone_number

UPDATE

Manage database changes with database migrations can prevent this type of situation

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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