From ea071870f943c23a8eaf36dfcdf382afd6478fd1 Mon Sep 17 00:00:00 2001 From: Matthias Kestenholz Date: Fri, 22 Mar 2019 13:21:00 +0100 Subject: Fixed #30280 -- Restored Model.get_FIELD_display()'s coercion of lazy strings. Reverted cc79c7ee637e65c8da27e56d746c87903d5ec901. --- tests/choices/models.py | 5 +++-- tests/choices/tests.py | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/choices/models.py b/tests/choices/models.py index b4ef8954ab..37ef8daf60 100644 --- a/tests/choices/models.py +++ b/tests/choices/models.py @@ -10,12 +10,13 @@ field. This method returns the "human-readable" value of the field. """ from django.db import models +from django.utils.translation import gettext_lazy as _ class Person(models.Model): GENDER_CHOICES = ( - ('M', 'Male'), - ('F', 'Female'), + ('M', _('Male')), + ('F', _('Female')), ) name = models.CharField(max_length=20) gender = models.CharField(max_length=1, choices=GENDER_CHOICES) diff --git a/tests/choices/tests.py b/tests/choices/tests.py index 329c936c7f..88b8bf7fe2 100644 --- a/tests/choices/tests.py +++ b/tests/choices/tests.py @@ -20,3 +20,6 @@ class ChoicesTests(TestCase): a.gender = 'U' self.assertEqual(a.get_gender_display(), 'U') + + # _get_FIELD_display() coerces lazy strings. + self.assertIsInstance(a.get_gender_display(), str) -- cgit v1.3