Django自定义模板函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django自定义模板函数相关的知识,希望对你有一定的参考价值。

模板函数是使用于模板文件的处理函数,模板函数的使用方式是% 模板函数 %

1. 创建自定义函数文件夹

想要使用自定义模板函数的话需要先创建用于存放函数的文件夹,而在django中对于自定义函数文件夹的名称有严格的要求,即要求存放自定义模板函数的文件夹必须叫templatetags

  • 首先在项目app文件夹中创建templates文件夹
  • 创建模板函数py文件,文件名可自定义,笔者这里叫utils.py
    templates/utils.py
    
    from django import template
    from django.utils.safestring import mark_safe
    from time import strftime, localtime

register = template.Library()

@register.simple_tag
def foramtDate(timestamp):
‘‘‘
格式化时间戳
‘‘‘
result = ‘1997-01-01 0:0:0‘
try:
timestamp = float(timestamp)
result = strftime(‘%Y-%m-%d %H:%M:%S‘, localtime(timestamp))
except Exception as error:
pass

return result
**上面内容除了def方法体外,其余均为模板函数固定格式**

#### 2. 在模板文件中使用自定义模板函数
在使用自定义模板函数前需要先引进模板函数文件
```html
% extends ‘global.html‘ %
% load utils %
<!DOCTYPE html>
<html lang="zh">
.....
<body>
...
<label>注册时间:</label>
<div>% foramtDate request.session.userData.reg_datetime %</div>
...
</body>
</html>

% load utils %,则是引进对应的模板文件,函数foramtDate后面跟的则为形参

以上是关于Django自定义模板函数的主要内容,如果未能解决你的问题,请参考以下文章

Django自定义模板函数

Django自定义模板函数

Django之博客系统:自定义模板标签

django 的模板语言template ,自定义过滤器,自定义标签,模板继承

Django自定义404500等页面模板

Django(模板语言-自定义filter和simple_tag)