summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlton Gibson <carlton.gibson@noumenal.es>2020-03-05 16:04:06 +0100
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2020-03-06 11:43:28 +0100
commit1c1911dcd9480ddc23a64703027cc78b379bc011 (patch)
treec91b95f87d42a2f4c41231ce678e65e7c2043df5
parente3069f6665646695495b8071a6161f13cc9df374 (diff)
[3.0.x] Fixed #31342 -- Clarified docs about using base managers for related objects.
Backport of 08a6215d334f88f16707278e6003af59d13345b4 from master
-rw-r--r--docs/topics/db/managers.txt12
1 files changed, 7 insertions, 5 deletions
diff --git a/docs/topics/db/managers.txt b/docs/topics/db/managers.txt
index 1b34bea69b..aa41eb648d 100644
--- a/docs/topics/db/managers.txt
+++ b/docs/topics/db/managers.txt
@@ -214,11 +214,13 @@ appropriate for your circumstances, you can tell Django which class to use by
setting :attr:`Meta.base_manager_name
<django.db.models.Options.base_manager_name>`.
-Base managers aren't used when querying on related models. For example, if the
-``Question`` model :ref:`from the tutorial <creating-models>` had a ``deleted``
-field and a base manager that filters out instances with ``deleted=True``, a
-queryset like ``Choice.objects.filter(question__name__startswith='What')``
-would include choices related to deleted questions.
+Base managers aren't used when querying on related models, or when
+:ref:`accessing a one-to-many or many-to-many relationship
+<backwards-related-objects>`. For example, if the ``Question`` model
+:ref:`from the tutorial <creating-models>` had a ``deleted`` field and a base
+manager that filters out instances with ``deleted=True``, a queryset like
+``Choice.objects.filter(question__name__startswith='What')`` would include
+choices related to deleted questions.
Don't filter away any results in this type of manager subclass
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~