summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorCarlton Gibson <carlton.gibson@noumenal.es>2020-01-07 11:52:09 +0100
committerCarlton Gibson <carlton@noumenal.es>2020-01-15 15:35:22 +0100
commit29c126bb349526b5f1cd78facbe9f25906f18563 (patch)
tree1619db156a90607b54bce848c676867a67c86646 /docs
parentd202846ced2f58d7a34ad80bfe2bde8a542a70b9 (diff)
Fixed #31124 -- Fixed setting of get_FOO_display() when overriding inherited choices.
Regression in 2d38eb0ab9f78d68c083a5b78b1eca39027b279a
Diffstat (limited to 'docs')
-rw-r--r--docs/ref/models/instances.txt9
-rw-r--r--docs/releases/3.0.3.txt4
2 files changed, 13 insertions, 0 deletions
diff --git a/docs/ref/models/instances.txt b/docs/ref/models/instances.txt
index 1524ad2fcd..6adcb979ba 100644
--- a/docs/ref/models/instances.txt
+++ b/docs/ref/models/instances.txt
@@ -834,6 +834,15 @@ Note that in the case of identical date values, these methods will use the
primary key as a tie-breaker. This guarantees that no records are skipped or
duplicated. That also means you cannot use those methods on unsaved objects.
+.. admonition:: Overriding extra instance methods
+
+ In most cases overriding or inheriting ``get_FOO_display()``,
+ ``get_next_by_FOO()``, and ``get_previous_by_FOO()` should work as
+ expected. Since they are added by the metaclass however, it is not
+ practical to account for all possible inheritance structures. In more
+ complex cases you should override ``Field.contribute_to_class()`` to set
+ the methods you need.
+
Other attributes
================
diff --git a/docs/releases/3.0.3.txt b/docs/releases/3.0.3.txt
index c2cac9203d..2726e2d3ab 100644
--- a/docs/releases/3.0.3.txt
+++ b/docs/releases/3.0.3.txt
@@ -31,3 +31,7 @@ Bugfixes
:class:`~django.contrib.postgres.aggregates.ArrayAgg` and
:class:`~django.contrib.postgres.aggregates.StringAgg` with ``filter``
argument when used in a ``Subquery`` (:ticket:`31097`).
+
+* Fixed a regression in Django 2.2.7 that caused
+ :meth:`~django.db.models.Model.get_FOO_display` to work incorrectly when
+ overriding inherited choices (:ticket:`31124`).