模板语言自带的一些处理函数:通过管道符来处理
帮助方法:
{{ 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'
,
)
|