#28711 closed Bug (fixed)
unordered_list template filter does not work with lazy translations
Reported by: | Jonas Haag | Owned by: | nobody |
---|---|---|---|
Component: | Template system | Version: | dev |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Accepted | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
I would expect that the following assertion holds true:
from django.utils.translation import ugettext_lazy as _ from django.template.defaultfilters import unordered_list assert unordered_list(['', _('lazy')]) == unordered_list(['', 'lazy']))
I.e., unordered_list
handles lazy translations as if they were strings.
This used to work in Django < 1.8, more specifically before the patch to this ticket: https://code.djangoproject.com/ticket/23260
This bug exists in all versions 1.8–master.
Pull request follows.
Change History (8)
comment:1 by , 7 years ago
Description: | modified (diff) |
---|
comment:2 by , 7 years ago
comment:3 by , 7 years ago
Triage Stage: | Unreviewed → Accepted |
---|
comment:7 by , 7 years ago
Will this be backported to Django 1.11? IIUC it still receives bug fixes until end of this year.
comment:8 by , 7 years ago
Fixes for regressions are generally backported to the latest stable release but as this is such a long standing regression, it doesn't seem critical. I'm wary of introducing a different regression this late in 1.11.x's bug fix period and the patch does not backport cleanly to 1.11 where Python 2 compatibility is required.
PR: https://github.com/django/django/pull/9240