1. 模版常用过滤器
在模版中,有时候需要对一些数据进行处理以后才能使用。一般在Python中我们是通过函数的形式来完成的。而在模版中,则是通过过滤器来实现的。过滤器使用的是|来使用。
add
将传进来的参数添加到原来的值上面。这个过滤器会尝试将值和参数转换成整形然后进行相加。如果转换成整形过程中失败了,那么会将值和参数进行拼接。如果是字符串,那么会拼接成字符串,如果是列表,那么会拼接成一个列表。
{
{ value|add:"2" }}
如果value是等于4,那么结果将是6。如果value是等于一个普通的字符串,比如abc,那么结果将是abc2。
cut
移除值中所有指定的字符串。类似于python中的replace(args,"")。实际原理就是将传入的指定字符用空来替换掉。
{
{ value|cut:" " }}
date
将一个日期按照指定的格式,格式化成字符串。
# 数据
context = {
"birthday": datetime.now()
}
# 模版
{
{ birthday|date:"Y/m/d" }}
那么将会输出2018/02/01。其中Y代表的是四位数字的年份,m代表的是两位数字的月份,d代表的是两位数字的日。
| 格式字符 | 描述 | 示例 |
|---|---|---|
| Y | 四位数字的年份 | 2018 |
| m | 两位数字的月份 | 01-12 |
| n | 月份,1-9前面没有0前缀 | 1-12 |
| d | 两位数字的天 | 01-31 |
| j | 天,但是1-9前面没有0前缀 | 1-31 |
| g | 小时,12小时格式的,1-9前面没有0前缀 | 1-12 |
| h | 小时,12小时格式的,1-9前面有0前缀 | 01-12 |
| G | 小时,24小时格式的,1-9前面没有0前缀 | 1-23 |

本文详细介绍了Django模板的常用过滤器,如add、cut、date等,并展示了如何进行模板结构优化,包括引入模板和模板继承。模板继承允许在父模板中定义基本结构和block接口,子模板通过extends和block关键字实现内容定制。
最低0.47元/天 解锁文章
321

被折叠的 条评论
为什么被折叠?



