Django表单 - 我可以在不保存的情况下创建对象吗?

时间:2015-08-04 11:50:29

标签: django django-forms

我有一个对象( myModel )我想根据表单( myModelForm )创建,我也希望该对象与 requiered ForeignKey 对象(群组),我想自己决定。(也就是说,不要让它在表格中。

因此,如果我尝试使用 form.save(),我会收到错误消息。有没有办法在我使用 save()之前添加Group ForeignKey(在视图中)?

我的代码看起来像这样:

class myModel(models.Model):
    myGroup = ForeignKey(Group)
    normal_field1 = TextField()
    ...
    normal_field2 = TextField()


class myModelForm(ModelForm):
    class Meta:
       model = myModel
       fields = [normal_field1,noraml_field2]

muchas gracias

1 个答案:

答案 0 :(得分:3)

使用commit=False创建项目而不将其持久保存到数据库中。

if form.is_valid():
    obj = form.save(commit=False)
    obj.myGroup= whatever
    obj.save()