Django:从Form中获取Model实例而不保存

时间:2010-10-19 11:35:10

标签: django django-forms

假设我有一个django ModelForm,我想在保存之前编辑它。

例如,

而不是这个

model_instance = form.save()

我想做这样的事情

model_instance = form.get_model()
model_instance.edit() #say add a new field which is not available on form
model_instance.save()

2 个答案:

答案 0 :(得分:35)

model_instance = form.save(commit=False)

将返回模型的对象而不保存到DB

然后您可以添加某些字段的值,该字段在表单

上不可用
model_instance.some_field = value
model_instance.save()

答案 1 :(得分:4)

此外:

model_instance = form.instance
# edit
model_instance.save()