更改了外键的关系Django模型

时间:2020-08-22 21:45:30

标签: django postgresql

我的buyer field来自卖方模型与买方模型之间的关系如下:

class Buyer(models.Model):
    name = models.CharField(max_length=200, blank=True)
    description = models.CharField(max_length=200, blank=True)

class Sell(models.Model):
    item = models.OneToOneField(Buy, related_name='sell', on_delete=models.CASCADE)
    buyer = models.ForeignKey(**Buyer**, related_name='sell', on_delete=models.CASCADE)

但是现在,将其设置为“用户”模型,如下所示:

class Sell(models.Model):
    item = models.OneToOneField(Buy, related_name='sell', on_delete=models.CASCADE)
    buyer = models.ForeignKey(**User**, related_name='sell', on_delete=models.CASCADE)

当我转到Django admin时,它显示了User模型中的所有可用用户,但是如果我尝试保存,则会出现如下错误:

insert or update on table "dma_sell" violates foreign key constraint "dma_sell_buyer_id_4d165f92_fk_dma_buyer_id"
DETAIL:  Key (buyer_id)=(13) is not present in table "dma_buyer".

我想知道我不应该对此进行更改,但是纠正此错误的最佳方法是什么?我真的需要将买方字段与用户模型联系起来!

谢谢!

0 个答案:

没有答案