Merge pull request #422 from elvard/18996

Fixed #18996 - Clarified overriden model methods not called on bulk operations
This commit is contained in:
Tim Graham 2012-10-12 16:45:45 -07:00
commit 5fb22329a1
1 changed files with 8 additions and 1 deletions

View File

@ -764,7 +764,7 @@ built-in model methods, adding new arguments. If you use ``*args,
**kwargs`` in your method definitions, you are guaranteed that your **kwargs`` in your method definitions, you are guaranteed that your
code will automatically support those arguments when they are added. code will automatically support those arguments when they are added.
.. admonition:: Overriding Delete .. admonition:: Overridden model methods are not called on bulk operations
Note that the :meth:`~Model.delete()` method for an object is not Note that the :meth:`~Model.delete()` method for an object is not
necessarily called when :ref:`deleting objects in bulk using a necessarily called when :ref:`deleting objects in bulk using a
@ -772,6 +772,13 @@ code will automatically support those arguments when they are added.
gets executed, you can use :data:`~django.db.models.signals.pre_delete` gets executed, you can use :data:`~django.db.models.signals.pre_delete`
and/or :data:`~django.db.models.signals.post_delete` signals. and/or :data:`~django.db.models.signals.post_delete` signals.
Unfortunately, there isn't a workaround when
:meth:`creating<django.db.models.query.QuerySet.bulk_create>` or
:meth:`updating<django.db.models.query.QuerySet.update>` objects in bulk,
since none of :meth:`~Model.save()`,
:data:`~django.db.models.signals.pre_save`, and
:data:`~django.db.models.signals.post_save` are called.
Executing custom SQL Executing custom SQL
-------------------- --------------------