Django动态表单子类列表



我正在努力理解如何将模型定义为包含2个整数和1个charfield的类,然后使其成为另一个模型的一部分。

我需要的数据示例

我想在面向对象编程中,我应该这样定义模型类:

class Component(models.Model):
pipe_type = models.CharField(max_length=200)
length = models.IntegerField()
amount = models.IntegerField()

然后我不知道如何将其用于django模型,它应该是这样的:

class Item(models.Model):
name = models.CharField()
components_needed = ? LIST OF Component class ?

此外,由于需要大小的组件会对对象保持警惕,因此应该可以通过页面上的按钮来扩展其大小,例如,可以有3个输入字段,它们旁边将是"+"以及"-"按钮添加/删除另一组3个输入字段

我花了一整天的时间寻找解决方案,但在这一点上,我不确定django是否能处理好这个问题。我是python和django的新手,所以有很多事情我不理解。

我将感谢的任何帮助

现在唯一的方法(不能将多个FK放在一个单元格中(就像django本身与用户/组一起使用一样,因此需要3个模型。在django中有group、user和user_group,所以我建议您:

class Component(models.Model):
pipe_type = models.CharField(max_length=200)
length = models.IntegerField()
amount = models.IntegerField()

class Item(models.Model):
name = models.CharField()

class Item_Component(models.Model):
Component = models.ForeignKey(Component, on_delete=models.CASCADE)
Item = models.ForeignKey(Item, on_delete=models.CASCADE)

所以现在在第三个模型中,您可以有多个行,其中包含item和diffrent组件。

打开您的数据库查看器应用程序,查看django用户组表。

最新更新