<转> django模板语言filter方法
Django的模板是一个简单的文本文件,它可以生成任何文本格式(HTML、XML、CSV等),在本文开始之前先看一个Django模板的例子:
从这个例子中可以看到,模板标签可以是单独出现的,如extends标签;也可以是成对出现的,如block标签和for标签。而模板的主体就是一个HTML结构的文本文件,看到这里我想如果有过ASP, PHP开发经验的人都会感到很亲切,因为它们的语法非常相似,都是嵌入到HTML中的标记语言。
变量Variables
变量的基本用法:{{ variable }},当模板引擎遇到变量时会将变量替换为具体值。变量名可以包含字母数字和下划线,不能包含空格及其它特殊符号。句点(.)在变量中有特殊意义,如果模板引擎遇到了句点将会按照下面的顺序对其进行解释:
字典查找
查找属性和方法
查找下标元素
注意如果句点后面的变量是一个可以调用的方法的话,那么这个方法会按照空参数的方式调用,例如一个字典的iteritems方法可以在模板中用以下方式调用:
过滤器Filters
你可以使用过滤器来修改变量值的显示样式。过滤器的使用方式 {{ 变量|过滤器方法}}。过滤器可以连续使用,形式如: {{ 变量|过滤器方法1|过滤器方法2}}。
注意变量、管道符(|)和过滤器方法之间不能有空格。
某些过滤器还可以接收参数,例如:{{ bio|truncatewords:30 }},这句代码的意思是显示bio的前30个单词。
如果过滤器参数包含空格的话,参数就要用引号扩起来,例如:{{ list|join:", " }}。
Django大约提供了60个过滤器,具体介绍可以在Django官网看到:
https://docs.djangoproject.com/en/1.11/ref/templates/builtins/#ref-templates-builtins-filters。
下面介绍几种常用的过滤器:
Default
如果变量是false或者空,显示default值:例如: {{ value|default:"nothing" }},如果value是false会在页面上显示nothing。
Length
显示一个字符串或者数组的长度,如:{{ value|length }}
Filesizeformat
将文件大小按照人类可读的形式显示,例如一个文件由123456789,那么显示成117.7 MB,语法形式:{{ value|filesizeformat }}
Add
加法运算:{{ value|add:"2" }}
这个方法会先按照数值来计算,如果失败了就直接将两个值拼接在一起,如连接两个数组。
Capfirst
首字母大写:{{ value|capfirst }}
cut
删除指定值,例如去掉字符串中的空格:{{ value|cut:" " }}
如果value是"String with spaces",那么输出"Stringwithspaces".
Date
格式化日期,该方法参数较多也很重要,请参考Django官网。
Dictsort
将一个字典按照某一字典项进行排序后返回,
例如,有一个字典users如下,包含三个人员信息:
按照人名进行排序:
显示样式:
Escape
将一个html字符串转意:
浏览器显示:
Join
拼接多个元素
标签Tags
For标签
循环执行标签内部代码,例如:
If,elif和else标签
和其它编程语言的if语句一样,当条件为真或不为空时,执行代码块,例如:
If标签中可以嵌套其它标签。
注释Comments
两种注释方式:
{# 这里是注释 #}
注释标签:
<转> django模板语言filter方法的更多相关文章
- Django(模板语言-自定义filter和simple_tag)
Django(模板语言-自定义filter和simple_tag) filter过滤器的主要形式:变量|函数,意思是将变量交给函数处理,而自定义filter就是自己定义函数,因为用到已有的很少. ...
- Django模板语言初识
一.Django框架简介 1.MVC框架 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控 ...
- Django模板语言相关内容 Djan
Django模板语言相关内容 Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} ...
- Django——模板语言相关内容
Django模板语言相关内容 Django模板系统 官方文档 常用语法 只需要记两种特殊符号: {{ }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} ...
- Django 模板语言 路由 视图
. 模板语言(字符串替换) . 母版和继承 . 什么时候用母版? html页面有重复的代码,把它们提取出来放到一个单独的html文件. (比如:导航条和左侧菜单) . 子页面如何使用母版? {% ex ...
- Django模板语言(常用语法规则)
Django模板语言 The Django template language 模板中常用的语法规则 {最新版本的Django语法可能有改变,不支持的操作可能支持了.[HTML教程 - 基本元素/标签 ...
- Django模板语言与视图(view)
常用语法 {{ }}和{% %} 变量相关的用{{}} , 逻辑相关的用{% %} 变量 在Django的模板语言中按此语法使用:{{ 变量名 }}. 当模版引擎遇到一个变量,它将计算这个变量,然后 ...
- 10:django 模板语言
Django的模板语言的目的是取得力量和易用性之间的平衡,与其他的模板语言相比,django模板语言显得更简单,更专一, django模板系统由模板,变量,过滤器,标签,注释等主要部分组成 模板 一个 ...
- Django模板语言,标签整理
Django模板语言 标签 内置标签引用 1. autoescape 控制自动转义是否可用. 这种标签带有任何 on 或 off 作为参数的话,他将决定转义块内效果. 该标签会以一个endautoes ...
随机推荐
- Mediator模式
[Mediator模式] 通过mediator来让各个相互通知的对象解耦.在iOS框架中就是NSNotificationCenter. 参考:http://www.jdon.com/designpat ...
- 六.使用list和tuple
list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: classmates = ...
- servlet01 项目demo、servlet生命周期
1 环境说明 jdk: 1.8 tomcat: 8.0 2 项目demo 2.1 新建一个动态的web项目 2.2 新建一个servlet类 该类必须继承 HttpServlet 技巧01:Htt ...
- 如何撤回经由Outlook2016刚发出的邮件
在Outlook2016中,刚发出了一封邮件,发现有问题,想撤回,如何处理? 在对方尚未查看和接收时,可撤回. 参考步骤 1.选中这封邮件,用鼠标双击打开 2.点Move旁边的下拉按钮 3.点击&qu ...
- R语言的并行运算(CPU多核)
通常R语言运行都是在CPU单个核上的单线程程序.有时我们会有需求对一个向量里的元素应用相同的函数,最终再将结果合并,并行计算可以大幅节约时间. 为了支持R的并行运算, parallel包已经被纳入了R ...
- Luogu 3957 [NOIP2017]普及组 跳房子
写了好久,感觉自己好菜,唉…… 首先发现这个$g$的取值具有单调性,可以想到二分答案,然后考虑用$dp$来检验,这样子可以写出朴素的转移方程: 设$f_i$表示以$i$结尾的最大价值,那么有$f_i ...
- css总结20:TCP通信协议WebSocket
HTML5 WebSocket 1 介绍: WebSocket是HTML5开始提供的一种在单个 TCP 连接上进行全双工通讯的协议. 在WebSocket API中,浏览器和服务器只需要做一个握手的动 ...
- 【Head First Java 读书笔记】(四)对象的行为
状态影响行为,行为影响状态 对象有状态和行为 类所描述的是对象知道什么和执行什么. 同一类型的每个对象能够有不同的方法行为吗? 任一类的每个实例都带有相同的方法,但是方法可以根据实例变量的值来表现不同 ...
- POJ - 2586 Y2K Accounting Bug (找规律)
Accounting for Computer Machinists (ACM) has sufferred from the Y2K bug and lost some vital data for ...
- 四则运算(Java) 陈志海 邓宇
目录 Github项目地址 PSP表格 功能要求 题目 功能(已全部实现) 效能分析 设计实现过程 数值生成 算式生成 问题集生成 设计实现过程 代码说明 测试运行 代码覆盖率 项目小结 Github ...