django.db.utils.IntegrityError: NOT NULL约束失败



我真的被卡在这里了。我回去编辑了我之前做的一些模型,现在我不能得到任何迁移,除非得到:

django.db.utils.IntegrityError: NOT NULL constraint failed: new__accounts_instrument.room_id

出现问题的模型:

计算/models.py

class Instrument(models.Model):
LEVEL = (
('HS', 'HS'),
('MS', 'MS'),
)
event = models.ForeignKey(Event, blank=False, null=True, on_delete=models.PROTECT)
name = models.CharField(max_length=200, blank=False, null=True)
abbreviation = models.CharField(max_length=10, blank=False, null=True)
level = models.CharField(max_length=200, blank=False, null=True, choices=LEVEL)
room = models.ForeignKey(AuditionRoom, default=None, on_delete=models.PROTECT)

我已经尝试删除迁移历史记录,但这会抛出其他代码,所以我"撤消";它。我试过把手术台放下来,但好像没有什么关系。

我非常感激任何指示,因为我现在很沮丧。如果你需要更多的代码片段,请告诉我,谢谢。

这个错误通常意味着没有提供所需的字段,另一个尝试可以在room字段中设置null=True, blank=True属性。

您还可以转到迁移文件夹并手动删除具有000*_blah-blah类型名称的文件,您可以删除除了0001_initial.py文件以外的所有文件。./manage.py makemigrations app_you_are_updateing运行后,应更新您的数据库。