Django的模板语言中的Simple_tag和filter

Django的模板语言中的Simple_tag和filter

Simple_tag

初识方法

{{time | date:"Y-m-d H:i:s"}}    #将日期以年月日时分秒的形式显示
{{name | truncatewords:"10" }}   #截取前10个字符
{{name | first | upper}}		 #第一个字大写
{{name | lower}}                 #全部小写

通过管道符连接后面的方法,我们就可以在前端展示我们想要的数据

当然了上面方面都是固定用法,在开发中我们通常会自定义这些函数。

  • 首先在我们所注册的app下创建一个名字为 templatetags 的目录,不可更改名字

  • 在目录中可以任意定义 py 文件名了(例如:demo.py),打个样

from django import template
from django.utils.safestring import mark_safe
register = template.Library()
@register.simple_tag

#下面就可以写自定义的函数喽
def test():
	return “hello” 

#在函数中可以接受参数
  • 怎样可以在模板中实现这个玩意呢
{% load demo %}
{% test %}   #{% test 2 2 %} 传参 可以传递多个参数,不在意空格

OK了,这样就以在前端显示 hello 了

以上便是创建出Simple_tag的自定义及实现的流程

filter

和Simple_tag的创建方法一致不同的是装饰器不同

from django import template
from django.utils.safestring import mark_safe
register = template.Library()
@register.filter

def addstr(t1,t2):
	return t1 + t2

在前端显示

{% load demo %}
{% name | addstr:":hello" %}
  • 这个规定比较上文较为严格,空格不能随意添加
  • 参数只能有两个,但是它可以作为模板语言中的 if判断的条件

总结:两种方法都是为了可以使数据更加清晰的展现在前端,可以通过实际进行筛选不同的方法。

在这里插入图片描述
同行的陌生人加油。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值