[django]添加自定义template filter标签

来源:互联网 发布:c语言函数头文件格式 编辑:程序博客网 时间:2024/05/16 00:52

看文档templatetag 直接放在app下的templatetag 文件夹下就好,这里想放到一个公共的目录下,然后写下简单的自定义tag的模板。 django1.6

创建

在项目目录下建立如下的文件夹结构

templatetags/    __init__.py    eryatags.py

eryatags.py

# -*- encoding=utf-8 -*-from django import template register = template.Library()from util.cryption import Cryption@register.filter(name='encrypt')def encrypt(value):    if isinstance(value, long) or isinstance(value, int):        value = str(value)    return Cryption.encrypt(value)

配置

Custom template tags and filters must live inside a Django app –!, 这里说只能放在app下面哦,跟 views.py models.py 一个目录,所以只能放到一个app的目录下面了。。不需要其他的配置

使用

首先引入filter

{% load eryatags %}

这个名称跟文件名一样的

应用

{{ dev.id|encrypt }}

自定义filter,大大的提高了模版的灵活性,使得一些简单易变的逻辑可以快速的实现和更改,重用,不用大费周折的修改后端代码。

声明:
本文出自 “orangleliu笔记本” 博客,转载请务必保留此出处http://blog.csdn.net/orangleliu/article/details/45743041
作者orangleliu 采用署名-非商业性使用-相同方式共享协议

0 0
原创粉丝点击