自定义模板过滤器

1.首先在某个app中,创建一个python包,叫做“templatetags”,注意,这个包的名字一定要是“templatetags”,否者的话,就会找不到定义的过滤器。

2.在创建的tamplatetags包下面,创建一个python文件,用来存储过滤器。

3.在新建的python文件中,定义过滤器(也就是函数),这个函数的第一个参数一定是被过滤的那个参数,并且如果在使用过滤器的时候要从视图函数中传递一个参数的话,就可以在过滤器中再定义一个参数,但是注意,过滤器函数最多只能有两个参数。

4.在写完过滤器函数之后,一定要把过滤器进行注册,不注册,不会进行执行定义的过滤器函数的。首先要使用django.template.Library.filter进行注册。

5.还要把这个过滤器所在的这个app添加到“settings.py”中的INSTALLD_APPS中,否者的话,就找不到这个app。

6.在模板中使用“load”标签进行加载过滤器所在的python包。

7.之后就可以进行传递参数,使用过滤器了。

示例代码如下:

views.py中代码如下:

from django.shortcuts import render

def index(request):

context = {

'value':'Hello'

}

return render(request,'index.html',context=context)

在urls.py中进行视图与url的映射:

from django.urls import path

from article import views

urlpatterns = [

path('',views.index, name = 'index'),

]

自定义的过滤器所在文件:my_fliter.py

from django import template

# 定义一个类

register = template.Library()

# 设置默认值,如果不从视图函数中船机来参数值的话,就为默认值None

def greet(value,word=None):

return value + word

# filter()函数中第一个参数为:过滤器的名字,第二个参数为函数的名称

register.filter("greet",greet)

在DTL模板index.html中进行使用自定义的过滤器:

{# 如果想要使用自定义的过滤器的话,就必须要先导入 ,导入的名称为自定义过滤器所处的文件名 #}

{# 必须要把app安装到settings.pyw文件中 #}

{% load my_fliter %}

Title

{{ value|greet:'小蚂蚁' }}

运行结果如图所示:

用python写一个彩票过滤器_37.Python自定义过滤器相关推荐

  1. python写一个表白程序-用Python写一个表白神器让你脱单

    原标题:用Python写一个表白神器让你脱单 来自公众号:Python编程时光 今天是什么节日,就不用小明说了吧? 有女朋友的,该准备的礼物买了吗? 没有对象的,表白的套路学会了吗? 还没有?好吧,你 ...

  2. 用python写一个彩票过滤器_python入门教程NO.6 用python做个简单的彩票号码统计分析工具...

    python入门教程 python入门教程NO.6 用python做个简单的彩票号码统计分析工具 本文涉及的python基础语法是:字典.集合及for循环 字典的定义 字典也是一种可变的容器,它可以存 ...

  3. python写一个类方法_重写python脚本,在脚本的每个类中注入一个方法 - python

    假设我有一个python模块foo.py,其中包含: class Foo(object): def __init__(self): pass 接下来,我想解析此脚本,并在每个类中注入一个方法,然后将其 ...

  4. python 写一个计算器_用 Python 写个计算器

    首页 专栏 python 文章详情 0 用 Python 写个计算器 Python小二 发布于 56 分钟前 我们常见的计算辅助工具有两种,一种是古人发明的算盘,另一种就是我们现代人发明的计算器,与算 ...

  5. 用python写一个彩票过滤器_Python实现的彩票机选器实例

    本文实例讲述了Python实现彩票机选器的方法.分享给大家供大家参考.具体实现方法如下: # -*- coding: utf8 -*- from Tkinter import * import tkF ...

  6. python物体跟着鼠标走_用Python写一个跟随鼠标运动的自定义窗口

    背景:因为项目需要,要开发一个在PC上运行的应用程序,生成一个跟随鼠标运动的窗口,并且监听鼠标的点击事件,并在窗口上做相应的显示. 平台:Win7 64位 + Python27 64位 支持库:PyH ...

  7. python写一个表白程序-用Python做一个情人节表白神器

    思路来自于「Python 编程时光」,我在其之上改进了一下,主要是通过tkinter编写一个界面方便使用,大家可以关注「Python 编程时光」这一良心公众号. 本文最后给出了打包好的软件,无需安装P ...

  8. python写一个游戏多少代码-Python项目实战之猜数字游戏(含实现代码)

    猜数字游戏,旨在提高初学者对 Python 变量类型以及循环结构的使用. 此游戏的游戏规则如下:程序随机内置一个位于一定范围内的数字作为猜测的结果,由用户猜测此数字.用户每猜测一次,由系统提示猜测结果 ...

  9. 利用python写一个简单的双色球彩票系统

    利用python写一个简单的双色球彩票系统 1.设置每次买的号码一样 写一个双色球彩票系统,系统可以随机产生一组数据,一组彩票数据有六位数,这六位数的的取值范围是0和1. 一张彩票是两块钱,用户可以选 ...

最新文章

  1. 人才短缺是数据中心运营商面临的新问题
  2. c语言比较麻烦的编程题,C语言编程题,比较简单
  3. bai的字怎么写_教师节贺卡祝福语怎么写?教师节贺卡贺词祝福语精简20个字
  4. 使用ArrayList时设置初始容量的重要性
  5. Docker精华问答 | 数据库为什么不适合放在 Docker 中运行?
  6. 美团将建新上海总部 斥资65亿元拿下上海杨浦商办地块
  7. linux实验报告makefile,linux实验二交叉编译和Makefile实验报告.doc
  8. printFinal用法示例
  9. msscript 64位找不到的替代方法
  10. 家庭记账本开发进度4
  11. 本人新书推荐《linux运维之道》
  12. linux中U盘用fdisk等命令查询不到
  13. android ios 逆向工程,iOS逆向工程之砸壳
  14. 阿里云服务器配置docker及其使用
  15. vue如何动态获取数据改变背景颜色和字体颜色以及获取图片
  16. matlab上万大型矩阵求逆,要好好总结一下超大矩阵求逆的技巧了
  17. 孫子に学ぶITマネジメント CIOの予算獲得編(1)勝ち方は体系化できる
  18. 剑三连接服务器未响应,剑三帮会联赛启航!武林争霸赛鹿死谁手,可能要看投资人谁更舍得...
  19. 20221226英语学习
  20. 豆瓣电影API列表(相应API已不可用)

热门文章

  1. 例子---JS实现钟表
  2. 交通仿真软件测试自学,[2018年最新整理]各类交通仿真软件综合介绍.docx
  3. java正则匹配双字节_Java 正则表达式详解(二)
  4. 如使用JDBC连接Mysql数据库
  5. c语言参数string类型,C语言main方法的参数打印
  6. 拾取物品怎么实现_H5接住掉落物品小游戏js实现思路(抛砖引玉)
  7. 多目标粒子群算法_PSO粒子群算法可视化
  8. 两个特征是独立好还是正相关好_stata速学|相关分析|主成分分析|因子分析
  9. 网页数据分页显示php,PHP网页设计例子:用PHP3完成MySQL数据的分页显示
  10. 商业方向的大数据专业_好程序员大数据培训分享大数据就业方向有哪些