diff options
| author | Russell Keith-Magee <russell@keith-magee.com> | 2010-12-04 08:04:16 +0000 |
|---|---|---|
| committer | Russell Keith-Magee <russell@keith-magee.com> | 2010-12-04 08:04:16 +0000 |
| commit | 6c53a816e7fee8f21f6ed9c7fe1c151a65ea2a57 (patch) | |
| tree | e92c68ea0bddffe64cc766fea653dfb0a475b4c8 | |
| parent | 70383ccf68934d3f520cae0938d86c373e625513 (diff) | |
[1.2.X] Fixed #14807 -- Ensure that boolean values aren't localized as T.rue and Fa.lse because of the thousand separator. Thanks to vanschelven for the report and
Backport of r14804 from trunk.
git-svn-id: http://code.djangoproject.com/svn/django/branches/releases/1.2.X@14807 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | django/utils/formats.py | 5 | ||||
| -rw-r--r-- | tests/regressiontests/i18n/tests.py | 1 |
2 files changed, 5 insertions, 1 deletions
diff --git a/django/utils/formats.py b/django/utils/formats.py index bf48a4fbe0..7b1d23db33 100644 --- a/django/utils/formats.py +++ b/django/utils/formats.py @@ -6,6 +6,7 @@ from django.utils.translation import get_language, to_locale, check_for_language from django.utils.importlib import import_module from django.utils.encoding import smart_str from django.utils import dateformat, numberformat, datetime_safe +from django.utils.safestring import mark_safe # format_cache is a mapping from (format_type, lang) to the format string. # By using the cache, it is possible to avoid running get_format_modules @@ -93,7 +94,9 @@ def localize(value): Checks if value is a localizable type (date, number...) and returns it formatted as a string using current locale format """ - if isinstance(value, (decimal.Decimal, float, int, long)): + if isinstance(value, bool): + return mark_safe(unicode(value)) + elif isinstance(value, (decimal.Decimal, float, int, long)): return number_format(value) elif isinstance(value, datetime.datetime): return date_format(value, 'DATETIME_FORMAT') diff --git a/tests/regressiontests/i18n/tests.py b/tests/regressiontests/i18n/tests.py index 77d5883265..99f9fe1303 100644 --- a/tests/regressiontests/i18n/tests.py +++ b/tests/regressiontests/i18n/tests.py @@ -250,6 +250,7 @@ class FormattingTests(TestCase): self.assertEqual(u'66.666,666', localize(self.n)) self.assertEqual(u'99.999,999', localize(self.f)) self.assertEqual(u'10.000', localize(self.l)) + self.assertEqual(u'True', localize(True)) settings.USE_THOUSAND_SEPARATOR = False self.assertEqual(u'66666,666', localize(self.n)) |
