博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django自定义过滤器定义与用法示例
阅读量:6454 次
发布时间:2019-06-23

本文共 1123 字,大约阅读时间需要 3 分钟。

hot3.png

本文实例讲述了Django自定义过滤器定义与用法。分享给大家供大家参考,具体如下:

一、自定义过滤器的介绍

      过滤器其实就是一个函数,把要过来的字段传递到一个函数内,进行加工处理,返回一个新的值展现在页面中,在实际开发中系统自带的过滤器有时候不能满足我们的需求的时候就要自定义

二、Django中自定义过滤器有两种方式

1、在组件(App)中的templatetags创建一个单独的py文件

2、单独创建一个组件(App)用来存放项目中所有的自定义过滤器

三、在项目中的组件中创建自定义过滤器

1、只能在安装的组件(App)中

2、只能在组件(App)下的templatetags包内创建
3、必须使用修饰器@register.filter
4、定义一个方法,传递值进去进行处理,返回新的值
5、创建自定义过滤器

①. 在templatetags包下创建一个poll.py的文件

from django import templateregister = template.Library()@register.filterdef mycut(value,args):  return value.replace(args,"")

6、 使用自定义过滤器

①. 先引入文件{% load poll %}

②. 使用

{% load poll %}  
Title

{

{ msg | mycut:' '}}

四、可以自定义一个组件(App)[由于不需要太多的文件,就手动创建一个]

1、手动创建一个包

2、在包中创建一个templatetags的包
3、将创建的这个包在settings.py中注入
4、在templatetags中创建文件及函数
5、过滤器的使用(跟上面一样的)

五、补充说明

如果是对字符串操作的一般都会引入@stringfilter修饰符

from django import templatefrom django.template.defaultfilters import stringfilterregister = template.Library()@register.filterdef mycut(value,args):  return value.replace(args,"")@register.filter@stringfilterdef mylower(value):  return value.lower()

希望本文所述对大家Django框架的Python程序设计有所帮助。

转载于:https://my.oschina.net/u/3828224/blog/1800935

你可能感兴趣的文章
实战:基于Spring Boot快速开发RESTful风格API接口
查看>>
java List的4种实现类
查看>>
lenovo thinkpad t460s tlp-stat 修复acpi_call
查看>>
04 贝叶斯算法 - 贝叶斯网络
查看>>
引燃抖音短视频源码开发项目的几点原因
查看>>
Android插件化之VirtualAPK框架Jar包开发
查看>>
php分页数据最后一页继续追加第一页数据
查看>>
内存优化篇-String/char[]/byte[]的选择
查看>>
全新 DOCKER PALS 计划上线,带给您不一样的参会体验!
查看>>
如何去设计前端框架能力?星巴克消息开放项目从0到1,从点到面的思考
查看>>
HBase+Spark技术双周刊 第六期
查看>>
一个很无语的bug——for语句的Unexpected token
查看>>
用户端智能在蚂蚁财富的应用实践
查看>>
Python的定义编码以及注释等
查看>>
年报解读 | 中国农业银行开启零售转型,2018年信用卡发卡量突破一亿张
查看>>
大数据最核心的关键技术——32个算法,必看!!
查看>>
巨拿科技获得联创东林千万级投资,打造白领福利新场景
查看>>
ES6关于Promise的用法
查看>>
SpringBoot - 日志配置
查看>>
KVM虚拟机测试CEPH健康报 OSD near full
查看>>