Skip to content

Commit 4ead705

Browse files
srinivasreddyclaudep
authored andcommitted
Fixed #28502 -- Made stringformat template filter accept tuples
1 parent 9229e00 commit 4ead705

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

django/template/defaultfilters.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,8 @@ def stringformat(value, arg):
224224
for documentation of Python string formatting.
225225
"""
226226
try:
227+
if isinstance(value, tuple):
228+
return ('%' + str(arg)) % str(value)
227229
return ("%" + str(arg)) % value
228230
except (ValueError, TypeError):
229231
return ""

tests/template_tests/filter_tests/test_stringformat.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ class FunctionTests(SimpleTestCase):
3030
def test_format(self):
3131
self.assertEqual(stringformat(1, '03d'), '001')
3232
self.assertEqual(stringformat([1, None], 's'), '[1, None]')
33+
self.assertEqual(stringformat((1, 2, 3), 's'), '(1, 2, 3)')
34+
self.assertEqual(stringformat((1,), 's'), '(1,)')
3335
self.assertEqual(stringformat({1, 2}, 's'), '{1, 2}')
3436
self.assertEqual(stringformat({1: 2, 2: 3}, 's'), '{1: 2, 2: 3}')
3537

0 commit comments

Comments
 (0)