我正在使用Django创建我工作的零件库存。以下是我所拥有的模型的片段:
class Part(models.Model):
description = models.CharField(max_length=64)
number= models.CharField(max_length=64)
price= models.FloatField()
class Group(models.Model):
name = models.CharField(max_length=64)
parts = models.ManyToManyField(Part)
所以我有不同的组(订单),里面有一些部分。
我想要做的是为我的小组的部分设置数量属性。但是,如果我想将数量字段添加到我的Part对象,则每个组将具有相同的数量,这不是正确的行为。我怎样才能让我的小组记住他们每个部分有多少?
感谢您的投入,我希望这不是一个完整的noob问题!
答案 0 :(得分:6)
您需要through table:
中间模型与ManyToManyField相关联,使用through参数指向将充当中介的模型。
class Part(models.Model):
description = models.CharField(max_length=64)
number= models.CharField(max_length=64)
price= models.FloatField()
class Group(models.Model):
name = models.CharField(max_length=64)
parts = models.ManyToManyField(Part, through='GroupPart')
答案 1 :(得分:4)
在保存数量的Group
和Part
之间创建新的through table。