Django中的关系数据库以弹出形式

时间:2019-03-28 11:02:35

标签: python django python-3.x django-forms bootstrap-modal

我在Django数据库中有两个表,如下所示:

制造商

IMG1 - Manufacturer

运输车

enter image description here

这两个表均以各自的形式填写。现在,我已将制造商的数据显示在这样的板上,并添加了“立即出价!”按钮。

enter image description here

当我单击此按钮时,将打开一个弹出窗口,其中包含所有带有 BID 字段的预填条目以及一个提交和取消按钮。像这样:-

enter image description here

现在,我希望当我输入一个出价并按下“提交”按钮时,它应该更新表中的Load_ID(我们正在对其进行出价),Transporter_ID(出价人)和bid_amount以及一个自动的bid_id。

我该怎么做?哪些字段应该一对多/多对一?

这是制造商面板的代码:

class ManufacturerBoardModel(models.Model):
  From = models.CharField(max_length=100,null=True)
  To = models.CharField(max_length=100,null=True)
  Type = models.CharField(max_length=100,null=True)
  Length = models.CharField(max_length=100,null=True)
  Weight = models.CharField(max_length=100,null=True)
  Numberoftrucks = models.IntegerField(null=True)
  MaterialType = models.CharField(null=True,max_length=100)
  Loadingtime = models.DateTimeField(null=True)

def _str_(self):
    return self.Origin

1 个答案:

答案 0 :(得分:1)

由于一个特定的生产板可以进行很多投标,因此我们可以将生产板作为投标模型中的外键。 唯一ID(uuid)可以用作出价键。 运输商也可以有很多投标,因此它也是外键。但是,如果您希望一个运输者只能在制造商委员会上竞标一次,那么您还可以对制造商委员会和运输者字段设置唯一的约束。

class Bidding(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    manufacturer_board = models.ForeignKey(ManufacturerBoardModel)
    transporter = models.ForeignKey(Transporter)
    amount = models.FloatField(default=0)
    class Meta:
        unique_together = ('manufacturer_board', 'transporter')