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.