包含ManyToMany字段的CreateView模板

时间:2018-04-05 08:18:35

标签: python django manytomanyfield

我正在涉及Django,我遇到了一个我无法解决的问题。我有三个表之间的M2M关系,我想创建一个CreateView。为简化起见,假设我们有三个模型:

class Ingredient(models.Model):
    name = models.Charfield(max_length=20, unique=True)

class Recipe(models.Model):
    recipe_name = models.Charfield(max_length=20, unique=True)
    ingredients = models.ManyToManyField(Ingredient, through=Units)

class Unit(models.Model):
    recipe = models.ForeignKey(Recipe, ....
    ingredient_units = models.FloatField()
    ingredient = models.ForeignKey(Ingredient, ....)

创建新配方时(在CreateView模板中),用户应该引入配方名称,然后必须选择一个当前成分(在选择的HTML标记中)并添加该成分的单位(2)。另外,我想添加一个按钮,添加一个带有Ingredient选择的新行和一个Unit字段,以添加用户想要的行数,并保存它。

问题是,我不知道如何将M2M关系中的字段添加到CreateView模板,也不知道如何在许多单位元组的同时保存配方。

这已经在管理部分工作了:

Admin example

但我希望前端的用户也一样。

问题是:如何在其他模型中添加字段并在表单保存时保存它们?

0 个答案:

没有答案