Django模版中的过滤器详细解析 Django filter大全
就象本章前面提到的一样,模板过滤器是在变量被显示前修改它的值的一个简单方法。 过滤器看起来是这样的:
{{ name|lower }}
显示的内容是变量 {{ name }} 被过滤器 lower 处理后的结果,它功能是转换文本为小写。 使用 | 来应用过滤器。
过滤器可以被 串联 ,就是说一个过滤器的输出可以被输入到下一个过滤器。这里有一个常用的 需求,先转义文本到HTML,再转换每行到 <p> 标签:
{{ my_text|escape|linebreaks }}
有些过滤器有参数。过滤器参数看起来是这样的:
{{ bio|truncatewords:"" }}
这个将显示变量 bio 的前30个词。过滤器参数总是使用双引号标识。
下面是一些最重要的过滤器;附录F有完整的过滤器列表。
addslashes : 添加反斜杠到任何反斜杠、单引号或者双引号前面。 这在处理包含JavaScript的文本时是非常有用的。
date : 按指定的格式字符串参数格式化 date 或者 datetime 对象, 范例:
{{ pub_date|date:"F j, Y" }}
格式参数的定义在附录F中。
escape : 转义 &符号,引号,<,> 符号。 这在确保用户提交的数据是有效的XML或XHTML时是非常有用的。 具体上, escape 做下面这些转换:
* 转换 & 到 &
* 转换 < 到 <
* 转换 > 到 >
* 转换 " (双引号) 到 "
* 转换 ' (单引号) 到 '
length : 返回变量的长度。你可以对列表或者字符串,或者任何知道怎么测定长度的Python 对象使用这个方法(也就是说,有 __len__() 方法的对象)。
(1)Add:给value加上一个数值,比如{{123@add:"5"}}返回128.
(2)addslahes:单引号加上转义字符。
(3)capfirst:第一个字符大写,比如{{"good"|capfirst}} 返回Good。
(4)center:输出指定长度的字符串,把变量居中,比如{{"abcd"|center:"50"}}
(5)cut:删除指定字符串。比如{{"You are not a Englishman"|cut:"not"}}.
(6)date:格式化日期
(7)default:如果值不存在,则使用默认值代替,比如{{value|default:"(N/A)"}}。
(8)default_if_none:如果值为None,则使用默认值代替,使用方式与default类似。
(9)dictsort:按某字段排序,变量必须是一个dictionary。
{%for moment in moments|dictsort:"id"%}
*{{moment.headline}}
{{}%endfor%}
如上代码指定moments用id字段排序后逐个进行headline输出。
(10)dictsortreversed:按某字段倒叙排序。变量必须是一个dictionary。
(11)divisibleby: 判断是否可以被某数字整除。
(12)escape:按HTML转意,比如将"<"转换为"<",将">"转换为">",
(13)filesizeformat:增加数字的可读性,转换结果为13KB,89MB,3Bytes。
(14)First:返回列表的第一个元素,变量必须是列表,比如{{['Eenlish','Chinese',Japanses]|first}}
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
(31)
(32)
Django模版中的过滤器详细解析 Django filter大全的更多相关文章
- django -- 模版语言之过滤器Filters和for循环
前戏 在前面写的图书管理系统中,我们对模版语言应该已经不陌生了,使用{{ }}包裹起来的就是模版语言,只需要记住两种就可以了 {{ 变量名 }} 变量相关的 {% %} ...
- Django模版中加载静态文件配置详解
.settings.INSTALLED_APPS下添加:django.contrib.staticfiles .settings.py下添加:STATIC_URL = '/static/' . ()在 ...
- celery 分布式异步任务框架(celery简单使用、celery多任务结构、celery定时任务、celery计划任务、celery在Django项目中使用Python脚本调用Django环境)
一.celery简介: Celery 是一个强大的 分布式任务队列 的 异步处理框架,它可以让任务的执行完全脱离主程序,甚至可以被分配到其他主机上运行.我们通常使用它来实现异步任务(async tas ...
- 【转】python中的闭包详细解析
一.什么是闭包? 如果一个内嵌函数访问外部嵌套函数作用域的变量,并返回这个函数,则这个函数就是闭包 闭包必须满足三个条件: 1. 必须有一个内嵌函数 2. 内嵌函数必须引用外部嵌套函数中的变量 ...
- 测试开发之Django——No7.Django模板中的过滤器
1.add 将参数添加到值. 例如: {{ value|add:"2" }} 如果value是4,那么输出将是6. 此过滤器将首先尝试将两个值强制转换为整数.如果失败,它将尝试将值 ...
- Django 模板中 变量 过滤器的使用方法
一.变量 1.变量的形式是:{{variable}}, 当模板引擎碰到变量的时候,引擎使用变量的值代替变量. 2.使用dot(.)能够访问变量的属性 3.当模板引擎碰到dot的 ...
- Django 模板中 变量 过滤器 标签 的使用方法
一.变量 1.变量的形式是:{{variable}}, 当模板引擎碰到变量的时候,引擎使用变量的值代替变量. 2.使用dot(.)能够访问变量的属性 3.当模板引擎碰到dot的 ...
- django模版中配置和使用静态文件方法
1 在项目根路径下创建静态文件目录static: test3 是我的项目名,根目录下面: booktest 是一个应用 static是我建立的静态文件目录(这个名字其实可以叫其他的),静态文件都放在这 ...
- Django 模版中如何对主菜单进行选中?
问题描叙: 在实际模版中,返回的页面我们想要主菜单保持一种状态,这个主菜单进去的子页面,都需要保持主菜单选择状态 例如 主菜单是 课程, 下面展现的章节和视频页面时候, 课程这个主菜单在展现这个菜单下 ...
随机推荐
- JQuery 关于位置的计算(重要)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- java.lang.RuntimeException: java.io.IOException: invalid constant type: 15
java.lang.RuntimeException: java.io.IOException: invalid constant type: 15 controller通过dubbo调用servic ...
- NUMA架构
参考: http://www.ibm.com/developerworks/cn/linux/l-numa/ http://blog.sina.com.cn/s/blog_3f5c2f8c01000b ...
- VS2017安装后如何移动 Windows Kits文件夹
MS的回答 LINK Try the following technique: Close all programs, move the “Windows Kits” folder to anothe ...
- combogrid 摘要
可装载组合框 - ComboBox 继承自$.fn.combo.defaults,通过$.fn.combobox.defaults覆盖默认值 combobox显示的是一个可以编辑的文本框和一个下拉列表 ...
- LaTeX排版设置图表的位置 Positioning images and tables
Positioning images and tables LATEX is an editing tool that takes care of the format so you only hav ...
- awk排序作业
输入:给定一个hotelinfo文件,文件格式如下: shanghai_city_7208 上海全季酒店淮海路店 shanghai_city_14744 锦江之星上海金山城市沙滩店 ...
- pidera安装node.js(树莓派)
1. 下载node.js wget http://nodejs.org/dist/v0.10.5/node-v0.10.5-linux-arm-pi.tar.gz tar -xzvf node-v0. ...
- 数学图形(1.35)Kappa curve
不知道这个曲线和那个运动品牌背靠背有什么关系.阿迪原先的商标是个三叶草,难道背靠背也是由数学图形来的? 以下是维基上的解释. In geometry, the kappa curve or Gutsc ...
- 创建带Mipmap的osg::Image
我们常用osgDB::readImage或者osg::Image::allocateImage()方式创建Image对象, 跟深一步的带Mipmap的Image怎样创建呢? 偶然在分析osgParti ...