国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Django自定義過濾器定義與用法示例

2020-02-22 23:31:26
字體:
供稿:網(wǎng)友

本文實(shí)例講述了Django自定義過濾器定義與用法。分享給大家供大家參考,具體如下:

一、自定義過濾器的介紹

前面我們就介紹過過濾器其實(shí)就是一個函數(shù),把要過來的字段傳遞到一個函數(shù)內(nèi),進(jìn)行加工處理,返回一個新的值展現(xiàn)在頁面中,在實(shí)際開發(fā)中系統(tǒng)自帶的過濾器有時候不能滿足我們的需求的時候就要自定義

二、Django中自定義過濾器有兩種方式

1、在組件(App)中的templatetags創(chuàng)建一個單獨(dú)的py文件
2、單獨(dú)創(chuàng)建一個組件(App)用來存放項(xiàng)目中所有的自定義過濾器

三、在項(xiàng)目中的組件中創(chuàng)建自定義過濾器

1、只能在安裝的組件(App)中
2、只能在組件(App)下的templatetags包內(nèi)創(chuàng)建
3、必須使用修飾器@register.filter
4、定義一個方法,傳遞值進(jìn)去進(jìn)行處理,返回新的值
5、創(chuàng)建自定義過濾器

①. 在templatetags包下創(chuàng)建一個poll.py的文件

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

6、 使用自定義過濾器

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

②. 使用

{% load poll %}<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>Title</title></head><body>  <p>{{ msg | mycut:' '}}</p></body></html>

四、可以自定義一個組件(App)[由于不需要太多的文件,就手動創(chuàng)建一個]

1、手動創(chuàng)建一個包
2、在包中創(chuàng)建一個templatetags的包
3、將創(chuàng)建的這個包在settings.py中注入
4、在templatetags中創(chuàng)建文件及函數(shù)
5、過濾器的使用(跟上面一樣的)

五、補(bǔ)充說明

如果是對字符串操作的一般都會引入@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程序設(shè)計(jì)有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 弋阳县| 泰州市| 汉川市| 保山市| 宁海县| 永春县| 深圳市| 资中县| 焉耆| 琼海市| 吐鲁番市| 定安县| 鄂托克旗| 青铜峡市| 改则县| 格尔木市| 泸定县| 抚州市| 彭水| 江孜县| 新津县| 涞源县| 遵义县| 兴仁县| 都江堰市| 瑞丽市| 房产| 新河县| 通州区| 乌拉特前旗| 扶余县| 来安县| 文成县| 和田县| 灌阳县| 齐齐哈尔市| 寻甸| 涿鹿县| 德州市| 汶川县| 克什克腾旗|