1. 程式人生 > >模板語言 自定義函數simple_tag

模板語言 自定義函數simple_tag

time 轉換成 bio utf ces containe type 文件中 bin

模板語言自帶的一些處理函數:通過管道符來處理

幫助方法:
{{ item.event_start|date:"Y-m-d H:i:s"}} 轉換成日期時間型
{{ bio|truncatewords:"30" }} 只取前30個字符
{{ my_list|first|upper }} 將第一個字母大寫
{{ name|lower }} 全轉換小寫

有時我們須要自定義函數:

a、在app中創建templatetags模塊

b、創建任意 .py 文件,如:xx.py

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 #!/usr/bin/env python #coding:utf-8
from django import template from django.utils.safestring import mark_safe register = template.Library() @register.simple_tag def my_simple_time(v1,v2,v3): return v1 + v2 + v3 @register.simple_tag def my_input(id,arg): result = "<input type=‘text‘ id=‘%s‘ class=‘%s‘ />" %(id
,arg,) return mark_safe(result)

c、在使用自定義simple_tag的html文件中導入之前創建的 xx.py 文件名

1 {% load xx %}

d、使用simple_tag

1 2 {% my_simple_time 1 2 3%} {% my_input ‘id_username‘ ‘hide‘%}

e、在settings中配置當前app,不然django無法找到自定義的simple_tag  

1 2 3 4 5 6 7 8 9 INSTALLED_APPS
= ( ‘django.contrib.admin‘, ‘django.contrib.auth‘, ‘django.contrib.contenttypes‘, ‘django.contrib.sessions‘, ‘django.contrib.messages‘, ‘django.contrib.staticfiles‘, ‘app01‘, )

模板語言 自定義函數simple_tag