summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--django/template/defaultfilters.py2
-rw-r--r--tests/template_tests/filter_tests/test_stringformat.py2
2 files changed, 4 insertions, 0 deletions
diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py
index 6dafe70ba5..a1b08e0921 100644
--- a/django/template/defaultfilters.py
+++ b/django/template/defaultfilters.py
@@ -224,6 +224,8 @@ def stringformat(value, arg):
for documentation of Python string formatting.
"""
try:
+ if isinstance(value, tuple):
+ return ('%' + str(arg)) % str(value)
return ("%" + str(arg)) % value
except (ValueError, TypeError):
return ""
diff --git a/tests/template_tests/filter_tests/test_stringformat.py b/tests/template_tests/filter_tests/test_stringformat.py
index 9912f50842..8efa5e0599 100644
--- a/tests/template_tests/filter_tests/test_stringformat.py
+++ b/tests/template_tests/filter_tests/test_stringformat.py
@@ -30,6 +30,8 @@ class FunctionTests(SimpleTestCase):
def test_format(self):
self.assertEqual(stringformat(1, '03d'), '001')
self.assertEqual(stringformat([1, None], 's'), '[1, None]')
+ self.assertEqual(stringformat((1, 2, 3), 's'), '(1, 2, 3)')
+ self.assertEqual(stringformat((1,), 's'), '(1,)')
self.assertEqual(stringformat({1, 2}, 's'), '{1, 2}')
self.assertEqual(stringformat({1: 2, 2: 3}, 's'), '{1: 2, 2: 3}')