繁体   English   中英

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

[英]django.db.utils.IntegrityError: NOT NULL constraint failed: new__inventory_app_item.accounting_class_id

所以我从事 Django 项目已经有一段时间了,我即将完成它。 我决定为其添加一个功能,并在我的 model 中添加了一个新的外键。 我做了makemigrations my_app ,但是当我尝试迁移它时,出现了这个错误:

django.db.utils.IntegrityError: NOT NULL constraint failed: new__inventory_app_item.accounting_class_id

这是 model:

class AccountingClass(models.Model):
    name = models.CharField(max_length=150, default="", blank=False)
    
    def __str__(self):  
        return self.name

这是它的外键引用:

`accounting_class = models.ForeignKey("AccountingClass", on_delete=models.SET_NULL, default="", blank=False, null=True, help_text="The accounting class of the object")`

这有什么问题?

这意味着您的数据库中有数据,其中会计 class 参考没有 PK 类型的值。 我怀疑这是因为您设置了default=""这是一个字符串(varchar)。 这可以完全删除,因为您有null=True所以默认情况下,当没有参考会计 class 时,您将拥有null

暂无
暂无

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

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