我在 django 数据库中有两个表,如下所示:
制造商
和
运输机
这两个表均由各自的表格填写。现在,我已将制造商的数据显示在这样的板上,并添加了“立即出价!”按钮也。
当我单击此按钮时,将打开一个弹出窗口,其中包含带有 BID 字段的所有预填充条目以及提交和取消按钮。像这样:-
现在我希望当我输入出价并按下提交按钮时,它应该更新 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
最佳答案
由于特定的制造商委员会可以有多个投标,我们可以将制造商委员会作为投标模型中的外键。 唯一 ID (uuid) 可用作出价 key 。 运输商也可以有很多投标,因此它也是外键。但是,如果您希望一个运输商只能在制造商板上竞标一次,您还可以对制造商板和运输商字段设置唯一的约束。
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')
关于python - django 中的关系数据库以弹出形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55395960/