修改createView以便从同一模板发布到两个不同的表单?

时间:2017-10-23 18:33:09

标签: django django-forms

我有两个具有共同字段的模型,比如说

class model1(models.Model):
    commonfield1 = ...
    commonfield2 = ...

class model2(models.Model):
    commonfield1 = ...
    commonfield2 = ...
    extrafields=..
    ....

现在我使用forms.ModelForm为这两个模型创建了两种不同的创建形式 现在,我的要求是当我为 model2 创建一个新对象时,我还想在 model1 中保存一个对象。

截至目前,我正在使用CreateView保存 model2 的表单 我想给用户一个选项,如果他按下那个保存两个对象按钮,两个模型都应该相应地更新。

我有什么方法可以使用CreateView来做到这一点?谢谢!

1 个答案:

答案 0 :(得分:0)

这不是一个重复的问题,但this link可以帮助您。

为此,您需要先在modelForm中添加一个字段,然后再覆盖form_valid。如果选中了自定义字段,则应使用表单中的相应字段手动调用model2.objects.create(...)