代码布局(自定义的代码,放在哪里)
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