过滤器,参数最多两个
过滤器类似于模板语法内置的内置方法
基本语法:{{数据|过滤器:参数}}
过滤器 | 描述 |
---|---|
length | 统计长度 |
default | 默认值:第一个参数布什尔值是True就展示第一个参数的值, 否则暂时冒号后面的值 |
filesizeformat | 文件大小(GB,MB,KB) |
date | 日期格式化 |
slice | 切片操作,支持步长 |
truncatechars | 切取字符(包含三个点) |
truncatewords | 切取单词(不包含三个点 按照空格切) |
truncatewords | 切取单词(不包含三个点 按照空格切) |
cut | 移除特定的字符 |
join | 拼接操作 |
add | 拼接操作(加法) |
转义 | safe |
<h1>过滤器</h1>
<p>统计长度:{{ s|length }}</p>
<p>默认值(第一个参数布尔值是True就展示第一个参数的值否在展示冒号后面的值):{{ b|default:'啥也不是' }}</p>
<p>文件大小:{{ file_size|filesizeformat }}</p>
import datetime
current_time = datetime.datetime.now()
<p>日期格式化:{{ current_time|date:'Y-m-d H:i:s' }}</p> # 输出年月日,时分秒
<p>切片操作(支持步长):{{ l|slice:'0:4:2' }}</p>
<p>切取字符(包含三个点):{{ info|truncatechars:9 }}</p>
<p>切取单词(不包含三个点 按照空格切):{{ egl|truncatewords:9 }}</p>
<p>切取单词(不包含三个点 按照空格切):{{ info|truncatewords:9 }}</p>
<p>移除特定的字符:{{ msg|cut:' ' }}</p>
<p>拼接操作:{{ l|join:'$' }}</p>
# n = 10
<p>拼接操作(加法):{{ n|add:10 }}</p> # 输出:20
<p>拼接操作(加法):{{ s|add:msg }}</p> # 字符串拼接
"""
后端: h = <h1>好</h1>
前端: <h1>好</h1>
"""
<p>转义:{{ hhh|safe }}</p> # 前端:好
<p>转义:{{ sss|safe }}</p>
"""
后端转义:
from django.utils.safestring import mark_safe
res = mark_safe(<h1>好</h1>)
"""
<p>转义:{{ res }}</p>