Works just like the normal template filter, escape(), except that it works on dictionaries and lsits
1 2 3 4 5 6 7 8 9 10 | from django.template.defaultfilters import escape as _escape
def escape(data):
if type(data) == dict:
for l in data:
data[l] = escape(data[l])
return data
elif type(data) in [list, tuple]:
return [escape(l) for l in data]
else:
return _escape(data)
|
More like this
- Template tag - list punctuation for a list of items by shapiromatron 11 months, 2 weeks ago
- JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 11 months, 3 weeks ago
- Serializer factory with Django Rest Framework by julio 1 year, 6 months ago
- Image compression before saving the new model / work with JPG, PNG by Schleidens 1 year, 7 months ago
- Help text hyperlinks by sa2812 1 year, 7 months ago
Comments
If data was a tuple, you should return a tuple.
#
An you should use
isinstance()
instead oftype()
in case of subclasses.#
data[l] = escape(data[l])
which escape method you use in this line?
from django.utils.html import escape ?
#
or re.escape()?
#
Please login first before commenting.