转载自:http://www.lidongkui.com/django-template-filter-table
一、形式:小写
{{ name | lower }}
二、过滤器是可以嵌套的,字符串经过三个过滤器,第一个过滤器转换为小写,第二个过滤器输出首字母,第三个过滤器将首字母转换成大写
标签
{{ str|lower|first|upper }}
三、过滤器的参数
显示前30个字
{{ bio | truncatewords:"30" }}
格式化
{{ pub_date | date:"F j, Y" }}
过滤器列表
{{ 123|add:"5" }} 给value加上一个数值
{{ "AB'CD"|addslashes }} 单引号加上转义号,一般用于输出到javascript中
{{ "abcd"|capfirst }} 第一个字母大写
{{ "abcd"|center:"50" }} 输出指定长度的字符串,并把值对中
{{ "123spam456spam789"|cut:"spam" }} 查找删除指定字符串
{{ value|date:"F j, Y" }} 格式化日期
{{ value|default:"(N/A)" }} 值不存在,使用指定值
{{ value|default_if_none:"(N/A)" }} 值是None,使用指定值
{{ 列表变量|dictsort:"数字" }} 排序从小到大
{{ 列表变量|dictsortreversed:"数字" }} 排序从大到小
{% if 92|pisibleby:"2" %} 判断是否整除指定数字
{{ string|escape }} 转换为html实体
{{ 21984124|filesizeformat }} 以1024为基数,计算最大值,保留1位小数,增加可读性
{{ list|first }} 返回列表第一个元素
{{ "ik23hr&jqwh"|fix_ampersands }} &转为&
{{ 13.414121241|floatformat }} 保留1位小数,可为负数,几种形式
{{ 13.414121241|floatformat:"2" }} 保留2位小数
{{ 23456 |get_digit:"1" }} 从个位数开始截取指定位置的1个数字
{{ list|join:", " }} 用指定分隔符连接列表
{{ list|length }} 返回列表个数
{% if 列表|length_is:"3" %} 列表个数是否指定数值
{{ "ABCD"|linebreaks }} 用新行用
、
标记包裹
{{ "ABCD"|linebreaksbr }} 用新行用
标记包裹
{{ 变量|linenumbers }} 为变量中每一行加上行号
{{ "abcd"|ljust:"50" }} 把字符串在指定宽度中对左,其它用空格填充
{{ "ABCD"|lower }} 小写
{% for i in "1abc1"|make_list %}ABCDE,{% endfor %} 把字符串或数字的字符个数作为一个列表
{{ "abcdefghijklmnopqrstuvwxyz"|phone2numeric }} 把字符转为可以对应的数字??
{{ 列表或数字|pluralize }} 单词的复数形式,如列表字符串个数大于1,返回s,否则返回空串
{{ 列表或数字|pluralize:"es" }} 指定es
{{ 列表或数字|pluralize:"y,ies" }} 指定ies替换为y
{{ object|pprint }} 显示一个对象的值
{{ 列表|random }} 返回列表的随机一项
{{ string|removetags:"br p p" }} 删除字符串中指定html标记
{{ string|rjust:"50" }} 把字符串在指定宽度中对右,其它用空格填充
{{ 列表|slice:":2" }} 切片
{{ string|slugify }} 字符串中留下减号和下划线,其它符号删除,空格用减号替换
{{ 3|stringformat:"02i" }} 字符串格式,使用Python的字符串格式语法
{{ "EABCD"|striptags }} 剥去[X]HTML语法标记
{{ 时间变量|time:"P" }} 日期的时间部分格式
{{ datetime|timesince }} 给定日期到现在过去了多少时间
{{ datetime|timesince:"other_datetime" }} 两日期间过去了多少时间
{{ datetime|timeuntil }} 给定日期到现在过去了多少时间,与上面的区别在于2日期的前后位置。
{{ datetime|timeuntil:"other_datetime" }} 两日期间过去了多少时间
{{ "abdsadf"|title }} 首字母大写
{{ "A B C D E F"|truncatewords:"3" }} 截取指定个数的单词
{{ "111221"|truncatewords_html:"2" }} 截取指定个数的html标记,并补完整
多重嵌套列表展现为html的无序列表
{{ string|upper }} 全部大写
linkageurl编码
{{ string|urlize }} 将URLs由纯文本变为可点击的链接。
{{ string|urlizetrunc:"30" }} 同上,多个截取字符数。
{{ "B C D E F"|wordcount }} 单词数
{{ "a b c d e f g h i j k"|wordwrap:"5" }} 每指定数量的字符就插入回车符
{{ boolean|yesno:"Yes,No,Perhaps" }} 对三种值的返回字符串,对应是 非空,空,None。
相关推荐
首先,我们需要了解Django模板标签的两种类型:简单标签(Simple Tag)和过滤器标签(Filter)。简单标签在模板中以{% tag_name %}的形式使用,而过滤器标签则用于处理变量,如{{ variable|filter_name }}。自定义...
### Django 自定义过滤器的实现 #### 一、概述 在使用Django开发Web应用时,我们经常会遇到需要对模版中的数据进行处理的情况。Django自带了一套强大的模板语言——Django Template Language (DTL),它允许开发者...
5. 创建自定义过滤器时,需要从django.template导入template,并从django.template.base导入Library,然后创建一个Library实例,并使用register装饰器。 下面是一个简单的自定义过滤器的创建和使用示例: 1. 在...
在Django框架中,自定义过滤器是一个强大的特性,它允许开发者扩展模板语言的功能,以处理特定的逻辑操作。过滤器本质上是Python函数,它们接收一个值作为输入,然后对其进行处理,返回一个新的值。在本文中,我们将...
6. **加载模板库**:Django的某些标签和过滤器来自特定的模板库,如`django.contrib.humanize`库中的`naturaltime`过滤器,可以将时间戳转化为更易读的形式。使用`{% load humanize %}`来加载该库。 7. **上下文...
tweetParser Django 模板过滤器 这是一个端口,用作 Django 模板过滤器 它是如何工作的 ? 安装后,只需: <p>{{ your_tweet|tweetparser }} 安装 在设置为项目的依赖项,或者将其设置为您的 virtualenv 类型: ...
本教程将详细解释如何在Django中创建自定义过滤器,并通过实例来阐述其用法。 首先,我们来理解创建过滤器的需求。假设你有一个模板,其中有一个变量,需要确保该变量不包含任何空格。如果这个模板被多个视图函数...
Django过滤器是模板语言的重要组成部分,用于在模板中对数据进行处理和转换,从而实现动态展示和格式化。在Django中,过滤器通常紧跟在变量之后,由竖线`|`分隔,用于对变量进行操作。下面将详细介绍一些常见的...
自定义标签和过滤器是Django模板系统中的两个重要特性,它们允许开发者创建自己的模板语言元素。通过这些功能,你可以实现更加灵活和复杂的逻辑处理,例如: - **自定义标签**:可以用来执行任意的Python代码,并且...
django 在views中有数据需要通过字典(dict)的方式传递给template,该字典中又包含了字典,而且字典中的键值还是一个对象,在template中处理传递过来的数据的时候,字典不能通过键值的方式取出原有数据,对象不能...
Django模板引擎的关键概念包括变量、过滤器、标签和模板继承。 1. **变量**:在模板中,变量用双大括号`{{ }}`包裹,用于插入动态数据。例如,`{{ user.name }}`将插入当前用户的名字。 2. **过滤器**:过滤器是...
模板引擎的核心概念包括变量、过滤器、标签和控制结构,它们使得开发者可以在静态HTML中插入动态数据。 **django-template-model** `django-template-model`这个库可能是一个专门为Django框架设计的模板模型工具。...
- **过滤器**: 可以对变量进行处理,如`|lower`将文本转为小写,`|truncatechars:10`截取字符串前10个字符。 - **标签**: 如`{% if %}`, `{% for %}`等,用于控制流,实现条件判断和循环。 - **块**: `{% block %}`...
- 自定义模板过滤器中不能定义与Django内置过滤器重名的过滤器函数,否则会导致Django模板系统抛出异常。 - 在编写过滤器函数时,应当注意参数的类型检查和错误处理,以避免在模板中使用过滤器时出现异常。 - 自定义...
模板可以包含任何标准的Django模板语法,如变量、过滤器、标签等。 ### 3. 创建邮件模板 例如,你可以创建一个名为`contact_email.html`的模板,内容如下: ```html <!DOCTYPE html> <title>{{ subject }} ...
在Django中,自定义过滤器的创建通常涉及在工程目录下的templatetags文件夹中创建一个Python模块,然后使用Django的`template.Library()`注册过滤器。可以使用`@register.filter`装饰器来定义单参数过滤器,`@...
为了增强模板的功能,Django提供了模板过滤器和标签系统。这些工具允许开发者添加自定义逻辑,以便在模板中执行特定操作,如格式化日期、处理文本等。 **自定义模板过滤器** 模板过滤器在Django模板语言中表现为`|...
在Django中,模板文件通常以.html结尾,可以包含变量、控制结构(如if-else、for循环)和过滤器,用于动态渲染内容。 2. **模板更新** 更新模板可能涉及修改模板文件以添加新功能、修复错误或优化性能。这个库可能...