模板过滤器 filter
常用模板过滤器:
1.add 将参数与值相加 首先尝试转换成整数相加,失败,则尝试所有可能,字符串,列表等。{{ value|add:"2" }}
2.capfirst 首字母大写,如果第一个字母不是字母则不起作用。{{ value|capfirst }}
3.date 日期格式化 {{ value|date:"D d M Y" }} time 时间格式化 {{ value|time:"H:i" }} 格式化格式见官方文档: [https://docs.djangoproject.com/en/2.1/ref/templates/builtins/#date]
4.default 如果变量解析失败,使用给定的默认值。{{ value|default:"nothing" }}(注意如果value是''空字符串,输出将会是'nothing')
5.first 返回列表的第一个元素 {{ value|first }}
6.last 返回列表的最有一个元素 {{ value|last }}
7.slice 返回一个列表的切片 {{ some_list|slice:":2" }}
8.join 连接字符串列表 与str.join(list)一样 {{ value|join:" // " }}
9.floatformat 浮点数格式化 不指定小数位参数,默认保留一个为小数
例子:
value Template Output
34.23234 {{ value|floatformat }} 34.2
34.23234 {{ value|floatformat:3 }} 34.232
10.length 返回字符串或列表的长度
11.length_is 判断字符串或列表长度是否指定的值,相等返回True {{ value|length_is:"4" }} lower 字符串中的字母都变小写{{ value|lower }}
12.upper 字符串中的字母都变大写{{ value|upper }}
13.safe 关闭变量的自动转义,使html标签生效{{ value|safe }}
- title 标题化,首字母大写 {{ value|title }}
15.-xss(跨域脚本攻击)