mirror of
https://github.com/Hopiu/django.git
synced 2026-04-25 01:04:48 +00:00
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. |
||
|---|---|---|
| .. | ||
| _ext | ||
| _theme/djangodocs | ||
| faq | ||
| howto | ||
| internals | ||
| intro | ||
| man | ||
| misc | ||
| ref | ||
| releases | ||
| topics | ||
| conf.py | ||
| contents.txt | ||
| glossary.txt | ||
| index.txt | ||
| make.bat | ||
| Makefile | ||
| README | ||
The documentation in this tree is in plain text files and can be viewed using any text file viewer. It uses ReST (reStructuredText) [1], and the Sphinx documentation system [2]. This allows it to be built into other forms for easier viewing and browsing. To create an HTML version of the docs: * Install Sphinx (using ``sudo pip install Sphinx`` or some other method) * In this docs/ directory, type ``make html`` (or ``make.bat html`` on Windows) at a shell prompt. The documentation in _build/html/index.html can then be viewed in a web browser. [1] http://docutils.sourceforge.net/rst.html [2] http://sphinx-doc.org/