1.在app下创建templatetags文件夹 , [过滤器名]文件

├── templatetags
│   ├── __init__.py
│   └── addjpg.py

2.addjpg.py

from django import templateregister = template.Library()
def adfjpg(value, word='.jpg'):# 最多接受两个参数# 第一个参数为被过滤的参数return  value + word
register.filter('addjpg', adfjpg)

3. settings中注册过滤器文件名

INSTALLED_APPS = ['blog','django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','blog.templatetags.addjpg', # <--------
]

4.template中

在load中导入过滤器名

{% load addjpg %}
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title>
</head>
<body><h1>{{ value | addjpg  }}</h1>
</body>
</html>

5.举例(时间间隔过滤器)

def time_before(value):'''时间处理过滤器1.如果时间间隔小于一分钟, 返回刚刚2.如果时间间隔大于等于一分钟,小于一小时, 返回xx分钟前3.如果时间间隔大于等于一小时,小于一天, 返回xx小时前4.如果时间间隔大于等于一天,小于30天, 返回xx天前5.否则返回2020/3/3 21:42'''if not isinstance(value ,datetime):return valuenow = datetime.now()timestamp = (now - value).total_seconds()if timestamp < 60:return '刚刚'elif timestamp >= 60 and timestamp < 60*60:minutes = timestamp // 60return '%d分钟前' % minuteselif timestamp >= 60*60 and timestamp < 60*60*24:hours = timestamp // (60*60)return '%d小时前' % hourselif timestamp >= 60*60*24 and timestamp < 60*60*24*30:days = timestamp // (60*60*24)return '%d天前' % dayselse:return value.strftime('%Y/%m/%d %H:%M')

Django如何自定义DTL过滤器?相关推荐

  1. Django从理论到实战(part21)--自定义模板过滤器

    学习笔记,仅供参考 参考自:Django打造大型企业官网–Huang Y: 本系列Blog以应用为主,理论基础部分我在后端专栏的Django系列博客已经写过了,如果有些需要补充的知识点,我会在这个系列 ...

  2. Python+django网页设计入门(18):自定义模板过滤器

    前导课程: Python+django网页设计入门(17):模板语法及应用 Python+django网页设计入门(16):优化设计复用分页代码 Python+django网页设计入门(15):公用模 ...

  3. Django(5) - 自定义过滤器及标签

    五,自定义过滤器及标签 满足额外需求 一,自定义过滤器(常用在App下创建) 一,在App下创建1.创建templatetags包,注意,这是一个python包2.创建customer_filters ...

  4. Django框架学习20--模板变量,模板标签,模板过滤器及自定义模板过滤器,自定义模板标签

    1.模板变量 string 字符串和 int 类型,通过key名称直接取值,如:{{ n_name }} list类型的取值,通过点下班取值,如:{{ fancy.0 }}.{{ fancy.1 }} ...

  5. Python一亿以内的素数个数_Python+django网页设计入门(18):自定义模板过滤器

    前导课程: Python+django网页设计入门(17):模板语法及应用 Python+django网页设计入门(16):优化设计复用分页代码 Python+django网页设计入门(15):公用模 ...

  6. django中自定义标签和过滤器

    django中自定义标签和过滤器 原文:http://www.cnblogs.com/MnCu8261/p/5934203.html 纪念如何填了半天的坑,红色重点 想要实现自定义标签和过滤器需要进行 ...

  7. java学习笔记(2):获取文件名和自定义文件过滤器

    //自定义文件过滤器import java.io.File;import javax.swing.filechooser.*;public class JavaChooser extends File ...

  8. vue 多个filters_vue自定义filters过滤器

    官方给出 在项目中我们如果有多个filters,那么我怎么一次注册,全局可用,我们在项目里新建一个filters文件夹,如下,index.js是出口文件,readMore是一个对字符串做处理的过滤器 ...

  9. django的模板系统过滤器笔记

    -------------------django内建的过滤器------------------- 1.add  使用形式为:{{ value | add: "2"}} 意义:将 ...

  10. SpringBoot学习笔记(4):自定义的过滤器

    SpringBoot:学习笔记(4)--自定义的过滤器 快速开始 SpringBoot提供的前端控制器无法满足我们产品的需求时,我们需要添加自定义的过滤器. 在SpringBoot的开发中,我们应该还 ...

最新文章

  1. 免费云服务器无限流量,云服务器弄无限流量
  2. 速卖通代运营靠谱吗?招人做对比代运营,找代运营经验分享
  3. java puzzler_Java Puzzler学习笔记
  4. 10 个常用的软件架构模式
  5. 金铲铲之战高峰期1万人排队,LOL手游如果公测会怎样?
  6. sqlserver查询当月的每一天_SQL生成一年每一天的时间列表的几种方法
  7. nginx 怎么重新编译安装mysql,centos 下 编译安装 nginx + mysql + php 服务
  8. python一个星期可以入门吗_Python一星期入门第6篇: 模块和包
  9. Eclipse Tips(2):代码颜色设置
  10. master节点重置后添加node报错_企业实战(23)基于Docker平台的Jenkins添加node节点与报错详解(2)...
  11. myeclipse发布项目
  12. 傅立叶变换的深入理解(转帖)
  13. java 分析图片文字大小时,剔除部分异常数据,思路梳理(格拉布斯准则)
  14. 网易互娱2020游戏研发实习生笔经面经
  15. 【Multisim仿真】数字电路仿真16路往复流水灯
  16. 食品药品版本库存管理软件
  17. C#读取Excel文件(*.xls)|*.xls(2种方法)
  18. pytorch中加入注意力机制(CBAM),以ResNet为例。到底要不要用ImageNet预训练?如何加预训练参数?
  19. 十个拿来就能用的网页炫酷特效
  20. maya海龟烘焙法线_maya法线烘焙

热门文章

  1. Sql Server 本地链接设置 127.0.0.1
  2. Spark API 之subtract(差集)
  3. layui 显示饼图_echarts实现饼图绘制
  4. LXDE桌面系统设置快捷键
  5. 开源机器人库orocos KDL 学习笔记(三):Kinematric Chain
  6. 解决微信小程序不在request合法域名列表中的问题
  7. Redis(十):sentinel.conf 配置文件说明
  8. sklearn.neighbors.KNeighborsClassifier()函数解析(最清晰的解释)
  9. 【小程序源码】笑话段子手
  10. 使用Fiddler快速保存微信视频号上的视频