首页 > 其他 > 详细

自定义过滤器及标签

时间:2019-02-23 16:45:50      阅读:147      评论:0      收藏:0      [点我收藏+]

代码布局(自定义的代码,放在哪里)

1,某个app特有的

——app目标下,templateags 文件夹

——再到ttemplateags 文件夹下创建python模块(py文件)

2,定义复用

——创建一个新的app,将他们定义在新的app中,在INSTALL_APPS注册,然后就可以应用

 

1,自定义模板过滤器

——模板过滤器是什么

  ——函数,一个或两个参数

    ——第一个参数,是传递进来的模板变量

    ——第二个参数,普通的参数,也可以是默认,也可以不要

  其实就是个函数,没有什么不同

定义非常简单,就是写一个函数

——注册:

  1,通过django.template.Library 它的实例的 filter 方法

  filter 有两个参数:

    ——name 过滤器的名称,是个字符串,可以不写,默认

    使用方法名作为过滤器的名称

    ——filter_func 定义的过滤器的函数

  2,通过装饰器来注册

  

  模板中使用

    先要load一下,通过python模块名

2,自定义模板标签

  ——简单标签

  django.ttemplate.Library.simple_tag()

  ——创建

    普通的python函数

  ——注册

    1,调用函数的方式

    2,装饰器

  ——引用上下文变量(views中传递到模板中的那个context)

    只需要在simple_tag中,设置take_context = True

    自定义的标签函数第一个参数一定是 context  (名字不能错)

  ——包含标签

    django.template.Library.inclusion_tag()

    通过渲染另外一个模板来展示数据。

  ——定义

    ——定义一个函数,接受调用时传递的模板变量,直接返回

    ——定义一个模板,供上一个定义的函数使用,

 

自定义过滤器及标签

原文:https://www.cnblogs.com/wdty/p/10422985.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!