django1/docs/ref
Loic Bistuer 17c3997f68 Fixed #21169 -- Reworked RelatedManager methods use default filtering
The `remove()` and `clear()` methods of the related managers created by
`ForeignKey`, `GenericForeignKey`, and `ManyToManyField` suffered from a
number of issues. Some operations ran multiple data modifying queries without
wrapping them in a transaction, and some operations didn't respect default
filtering when it was present (i.e. when the default manager on the related
model implemented a custom `get_queryset()`).

Fixing the issues introduced some backward incompatible changes:

- The implementation of `remove()` for `ForeignKey` related managers changed
  from a series of `Model.save()` calls to a single `QuerySet.update()` call.
  The change means that `pre_save` and `post_save` signals aren't called anymore.

- The `remove()` and `clear()` methods for `GenericForeignKey` related
  managers now perform bulk delete so `Model.delete()` isn't called anymore.

- The `remove()` and `clear()` methods for `ManyToManyField` related
  managers perform nested queries when filtering is involved, which may
  or may not be an issue depending on the database and the data itself.

Refs. #3871, #21174.

Thanks Anssi Kääriäinen and Tim Graham for the reviews.
2013-11-27 19:44:18 +02:00
..
class-based-views Fixed the base class note in the Date Views docs. 2013-11-19 10:23:59 -05:00
contrib Fixed #20522 - Allowed use of partially validated object in ModelAdmin.add_view formset validation. 2013-11-25 20:01:16 -05:00
files Fixed #21219 -- Added a way to set different permission for static files. 2013-10-24 17:40:01 -04:00
forms Fixed #21397 -- Re-added flexibility to TypedChoiceField coercion 2013-11-18 18:24:56 +01:00
models Fixed #21169 -- Reworked RelatedManager methods use default filtering 2013-11-27 19:44:18 +02:00
templates fixed typo in builtins.txt 2013-11-19 12:53:28 -05:00
clickjacking.txt Changed the doc to use gender-neutral pronouns when possible. 2013-10-02 16:41:04 +02:00
databases.txt Clarified MySQL Connector note. 2013-11-15 08:51:17 -05:00
django-admin.txt Fixed #21488 -- Multiple locales treatment in i18n commands. 2013-11-23 11:53:47 -03:00
exceptions.txt Fixed #21044 -- Documented django.core.urlresolvers.Resolver404 2013-09-05 08:45:33 -04:00
index.txt Fixed #19897 - Updated static files howto. 2013-03-29 19:15:19 -04:00
middleware.txt Fixed #19277 -- Added LocaleMiddleware.response_redirect_class 2013-10-03 16:15:29 -04:00
request-response.txt Fixed #18659 -- Deprecated request.REQUEST and MergeDict 2013-10-17 09:42:28 -04:00
settings.txt Removed confusing comments from the docs. 2013-11-24 20:22:22 +01:00
signals.txt Fixed #21391 -- Allow model signals to lazily reference their senders. 2013-11-24 17:51:22 -05:00
template-response.txt Fixed #21154 -- Updated TemplateResponse docs to better explain context. 2013-09-30 10:19:56 -04:00
unicode.txt Removed versionadded/changed annotations for 1.5 2013-08-19 09:09:41 -04:00
urlresolvers.txt Fixed #21044 -- Documented django.core.urlresolvers.Resolver404 2013-09-05 08:45:33 -04:00
urls.txt A few doc additions for changes from d228c1192e. 2013-09-22 13:46:16 -03:00
utils.txt Added missing parameter in npgettext_lazy docs 2013-11-08 23:20:50 +01:00
validators.txt Fixed #4833 -- Validate email addresses with localhost as domain 2013-01-11 20:45:46 +01:00
views.txt Fixed #20330 -- Normalized spelling of "web server". 2013-04-29 19:40:43 +02:00