Подтвердить что ты не робот

Django: получить экземпляр модели из формы без сохранения

Скажем, у меня есть модель 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()
4b9b3361

Ответ 1

model_instance = form.save(commit=False)

вернет вам объект модели без сохранения в DB

вы можете добавить значение некоторого поля, которое не доступно в форме

model_instance.some_field = value
model_instance.save()

Ответ 2

также:

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