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後面跟的則爲形參

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章