Kaydet (Commit) 0ffa3943 authored tarafından Simon Litchfield's avatar Simon Litchfield Kaydeden (comit) Tim Graham

Fixed #25097 -- Added BaseModelFormSet.delete_existing() hook.

üst 561c018d
......@@ -632,6 +632,11 @@ class BaseModelFormSet(BaseFormSet):
"""Saves and returns an existing model instance for the given form."""
return form.save(commit=commit)
def delete_existing(self, obj, commit=True):
"""Deletes an existing model instance."""
if commit:
obj.delete()
def save(self, commit=True):
"""Saves model instances for every form, adding and changing instances
as necessary, and returns the list of instances.
......@@ -756,8 +761,7 @@ class BaseModelFormSet(BaseFormSet):
if obj.pk is None:
continue
self.deleted_objects.append(obj)
if commit:
obj.delete()
self.delete_existing(obj, commit=commit)
elif form.has_changed():
self.changed_objects.append((obj, form.changed_data))
saved_instances.append(self.save_existing(form, obj, commit=commit))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment