diff options
| author | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2009-03-02 08:16:33 +0000 |
|---|---|---|
| committer | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2009-03-02 08:16:33 +0000 |
| commit | dfddf129f07a859f52f04497f6254b675a345f8d (patch) | |
| tree | f51646dc53a5b2318c2e279a0952adf6d6c88596 /django | |
| parent | 851461aa72cc94e7000c3c7713e1d9fb130e0fda (diff) | |
Fixed #9701 -- Added a "safeseq" template filter.
This is like "safe", except it operates on the individual elements of a
sequence, rather than treating the whole argument as a string.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@9952 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django')
| -rw-r--r-- | django/template/defaultfilters.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py index 2f46dc7b57..ff8d4184ea 100644 --- a/django/template/defaultfilters.py +++ b/django/template/defaultfilters.py @@ -422,11 +422,19 @@ def safe(value): """ Marks the value as a string that should not be auto-escaped. """ - from django.utils.safestring import mark_safe return mark_safe(value) safe.is_safe = True safe = stringfilter(safe) +def safeseq(value): + """ + A "safe" filter for sequences. Marks each element in the sequence, + individually, as safe, after converting them to unicode. Returns a list + with the results. + """ + return [mark_safe(force_unicode(obj)) for obj in value] +safeseq.is_safe = True + def removetags(value, tags): """Removes a space separated list of [X]HTML tags from the output.""" tags = [re.escape(tag) for tag in tags.split()] @@ -876,6 +884,7 @@ register.filter(removetags) register.filter(random) register.filter(rjust) register.filter(safe) +register.filter(safeseq) register.filter('slice', slice_) register.filter(slugify) register.filter(stringformat) |
