为什么 django 会抛出一个integrityError?

问题描述

我有一个非常奇怪的异常,我不知道如何处理它。到目前为止,一切正常,但是在我做了一些更改(不是数据库本身)之后,在我网站上列出的 16 个对象中,当我想从管理面板删除一个对象时,有 2 个向我抛出这个错误

FOREIGN KEY constraint Failed

models.py

class Products(models.Model):
    name = models.CharField(max_length=50,blank=True,null=True)
    price = models.FloatField(blank=True,null=True)
    description = models.TextField(max_length=300,null=True)
    resealed = models.BooleanField(blank=True,null=True)
    category = models.ForeignKey(to=SubCategories,on_delete=models.CASCADE,null=True)
    image = models.ImageField(upload_to='gallery',null=True)
    quantity = models.IntegerField(default=1)


class SubCategories(models.Model):
    name = models.CharField(max_length=50,null=True)
    description = models.TextField(max_length=500,null=True)
    par_category = models.ForeignKey(to=Categories,null=True,related_name="Category")

   
class Categories(models.Model):
    name = models.CharField(max_length=50,null=True)

我设置了 on_delete=models.CASCADE。 3 天前,我在数据库中做了一些更改,我将旧的 Category 表重命名为 SubCategories 并创建了一个新表 Categories。通过这一举措,我为新创建的表创建了 par_category 约束。在我做了一些折射之后,当我试图删除它们时,16 个元素中有两个向我抛出该错误

有人可以帮我解决这个问题吗?非常感谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)