diff --git a/djadmin2/renderers.py b/djadmin2/renderers.py index 0ead56f..fbfc9b6 100644 --- a/djadmin2/renderers.py +++ b/djadmin2/renderers.py @@ -46,11 +46,12 @@ def datetime_renderer(value, field): """ if isinstance(value, datetime): + # django ticket #23466 Removing seconds from locale formats return formats.localize(timezone.template_localtime(value)) elif isinstance(value, (date, time)): - return formats.localize(value) + return ":".join((formats.localize(value)).split(":")[:2]) else: - return value + return ":".join(value.split(":")[:2]) def title_renderer(value, field): diff --git a/djadmin2/tests/test_renderers.py b/djadmin2/tests/test_renderers.py index abf5429..76c3ef6 100644 --- a/djadmin2/tests/test_renderers.py +++ b/djadmin2/tests/test_renderers.py @@ -17,7 +17,7 @@ class RendererTestModel(models.Model): class BooleanRendererTest(TestCase): - + def setUp(self): self.renderer = renderers.boolean_renderer @@ -59,7 +59,7 @@ class DatetimeRendererTest(TestCase): def test_time_german(self): activate('de') out = self.renderer(dt.time(13, 37, 1), None) - self.assertEqual('13:37:01', out) + self.assertEqual('13:37', out) def test_time_chinese(self): activate('zh') @@ -70,6 +70,10 @@ class DatetimeRendererTest(TestCase): out = self.renderer(dt.datetime(2013, 7, 6, 13, 37, 1), None) self.assertEqual('July 6, 2013, 1:37 p.m.', out) + def test_date_as_string(self): + out = self.renderer('13:37:01', None) + self.assertEqual('13:37', out) + # TODO test timezone localization