Better>>Me

导航

Django 自定义模板标签TemplateTags

创建自定义的模板标签(template tags)

Django提供了以下帮助函数(functions)来允许你以一种简单的方式创建自己的模板标签(template tags):

  • simple_tag:处理数据并返回一个字符串(string)
  • inclusion_tag:处理数据并返回一个渲染过的模板(template)
  • assignment_tag:处理数据并在上下文(context)中设置一个变量(variable)

模板标签(template tags)必须存在Django的应用中。

在应用中创建一个名为templatestags的目录,目录要求符合python的包的规范(里面有__init__.py文件)

里面创建一个 my_tags.py

文件的命名是非常重要的。你将在模板(template)中使用这些模块的名字加载你的标签(tags)。

 

from django import template

register = template.Library()



@register.simple_tag
def my_tags():
    return  'this is my tags'

如上所见,我们创建了一个名叫my_tags()的标签,他返回的是一个字符串

如果你对函数的名字不满意.可以

@register.simple_tag(name='My_tags')

创建了 接下来就是使用了

在你的网页中

{% load my_tags %}  #这里填写的是你的文件名

然后使用你注册的名字

{% my_tags %}  #这里是函数的名字

 现在还没有效果,我们需要重启服务器,python manager.py runserver

就可以看见我们自定义的标签的效果了

posted on 2017-04-14 17:49  Better>>Me  阅读(204)  评论(0编辑  收藏  举报