[django]添加自定义template filter标签
看文档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 采用署名-非商业性使用-相同方式共享协议
[django]添加自定义template filter标签的更多相关文章
- Django之tag标签和filter标签
1.Django的tag常见的标签,可以做一些简单的功能 {%if%} 的使用主要用于做判断,还可以包含{%elif%} 这样的用法,最后要跟上{% endif %}.可以使用你的and,or,not ...
- Django 模板中 变量 过滤器 标签 的使用方法
一.变量 1.变量的形式是:{{variable}}, 当模板引擎碰到变量的时候,引擎使用变量的值代替变量. 2.使用dot(.)能够访问变量的属性 3.当模板引擎碰到dot的 ...
- django自定义过滤器及模板标签
创建一个模板库 不管是写自定义标签还是过滤器,第一件要做的事是创建模板库(Django能够导入的基本结构). 创建一个模板库分两步走: 第一,决定模板库应该放在哪个Django应用下. 如果你通过 m ...
- Django基础(2)--模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介
没整理完 昨日回顾: 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 ...
- Django实现自定义template页面并在admin site的app模块中加入自定义跳转链接
在文章 Django实现自定义template页面并在admin site的app模块中加入自定义跳转链接(一) 中我们成功的为/feedback/feedback_stats/路径自定义了使用tem ...
- Django(模板语言-自定义filter和simple_tag)
Django(模板语言-自定义filter和simple_tag) filter过滤器的主要形式:变量|函数,意思是将变量交给函数处理,而自定义filter就是自己定义函数,因为用到已有的很少. ...
- [caffe]linux下安装caffe(无cuda)以及python接口
昨天在mac上折腾了一天都没有安装成功,晚上在mac上装了一个ParallelDesktop虚拟机,然后装了linux,十分钟就安装好了,我也是醉了=.= 主要过程稍微记录一下: 1.安装BLAS s ...
- [Swift]基础
[Swift]基础 一, 常用变量 var str = "Hello, playground" //变量 let str1="Hello xmj112288" ...
- [Ruby on Rails系列]4、专题:Rails应用的国际化[i18n]
1. 什么是internationalization(i18n)? 国际化,英文简称i18n,按照维基百科的定义:国际化是指在设计软件,将软件与特定语言及地区脱钩的过程.当软件被移植到不同的语言及地区 ...
随机推荐
- bzoj2434阿狸的自动机
转载自 http://www.cnblogs.com/zj75211/p/6934976.html ●BZOJ 2434: [Noi2011]阿狸的打字机 ●赘述题目 (题意就不赘述了) ●解法: ...
- jQuery ajax中使用serialize()方法提交表单数据示例
<form id="form"> 输入账号 :<input id="name" type="text" name=&quo ...
- SQL之排序
1.按多个列排序 经常需要按不止一个列进行数据排序.例如,如果要显示雇员名单,可能希望按姓和名排序(首先按姓排序,然后在每个姓中再按名排序).如果多个雇员有相同的姓,这样做很有用. 要按多个列排序,简 ...
- jquery easyui combobox 高度自适应
data-options="required:true,editable:false,panelHeight:'auto'" 加上panelHeight:'auto'即可 列合并 ...
- 螺旋打印2D数组
//一破题付出血的代价 多思考!public static void offer(int [][]a){ ,right=a.length-,low=,high=a[].length-; while(l ...
- SVN/GIT精简使用教程
MAC 显示点文件 显示:defaults write com.apple.finder AppleShowAllFiles -bool true 隐藏:defaults write com. ...
- JAVA中的枚举类
某些情况下一个类的对象是有限而且固定的,例如性别就只有两个类(考虑大众情况).因此这种实例有限而且固定的类,java里面叫枚举类.枚举类的关键字是enum,一些基本的命名规则和文件命名等细节和一般的类 ...
- Go 语言类型转换
类型转换用于将一种数据类型的变量转换为另外一种类型的变量.Go 语言类型转换基本格式如下: type_name(expression) type_name 为类型,expression 为表达式. 实 ...
- Linux常见目录及命令介绍
一.Linux中常用的目录介绍: / -根目录 /bin -命令保存目录(普通用户亦可读取的命令) /boot -启动目录,启动相关文件 /d ...
- Nginx之(二)Nginx安装
首先从官网上http://nginx.org/下载最新的stable version源码,当前最新版本为nginx-1.10.2.tar.gz. 2.1 configure 解压之后,会发现里面有一个 ...