django自定义标签
自定义一个返回日期的标签
前端界面:
urls:
views:
自定义标签的代码:
from django import template
register = template.Library()
import datetime
class CurrentTimeNode(template.Node):
"""
template.Node提供了HttpResponse方法
"""
def __init__(self, str):
self.str = str
def render(self, context):
now = datetime.datetime.now()
return now.strftime(self.str)
@register.tag("current_time")
def do_current_time(parser, token):
"""
:param parser:
:param token:标签当中的所有内容
:return:
"""
try:
name, args = token.contents.split(None, 1) #将标签的内容切分成标签名称和内容两部分
except ValueError as e:
raise template.TemplateSyntaxError(str(e))
else:
return CurrentTimeNode(args)
然后查看效果