Django(七): 模板定义filter和tag

自定义filtertag:
1>. 自定义filter:
1>>. app中创建templatetags模块
2>>. 创建任意myTag.py文件
3>>. from django import template
register = template.Library() #register的名字是固定的,不可改变

@register.filter # 自定义过滤器, 只能传参一个
def filter_multi(t1, t2):
return t1 * t2
/************template***************/
{% load myTag %} # 加载自定义标签库
<h1> {{ test|filter_multi:3 }}</h1> # 调用自定义标签

2>. 自定义tag: 1> - 3> 一样
from django.utils.safestring import mark_safe # 导入安全声明函数

@register.simple_tag # 自定义标签, 不限制参数, 但不能用在控制语句里面
def simple_tag_multi(v1,v2):
return v1 * v2

@register.simple_tag
def my_input(id,arg):
result = "<input type='text' id='%s' class='%s' />" %(id,arg,)
return mark_safe(result) # tag中只能这样用, 相当于filter中的 safe 声明

/************template***************/
{% load myTag %} # 加载自定义标签库
{% my_input id arg%}
{% simple_tag_multi v1 v2%}

转载于:https://www.cnblogs.com/lancelotxly/p/10871596.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值