一、add
将传进来的参数添加到原来的值上面。这个过滤器会尝试将“值”和“参数”转换成整形然后进行相加。如果转换成整形过程中失败了,那么将会将“值”和“参数”进行拼接。如果是字符串,那么会拼接成字符串,如果是列表,那么会拼接成一个列表。实例代码如下:

{{ value|add:""}}

如果value是等于4,那么结果将是6.如果value是等于一个普通的字符串,如‘abc’,那么结果将是abc2.

二、cut
移除值中所有指定的字符串。类似于python中的replace(args,"").实例代码:

{{ value|cut:""}}

三、date

将一个日期按照指定格式,格式化成字符串。实例代码如下:

# 数据
context = {
"today" : datetime.now()
}
# 模版
{{ value|date:'Y/m/d'}}

结果为:2019/12/30。其中Y代表的是四位数的年份,m代表两位数的月份,d代表的是两位数的日。还有其他的时间格式化的方法。

Y:四位数的年份
m:两位数的月份
n:月份,1-9前面没有0前缀
d:两位数字的天
j:天,1-9前面没有0前缀
g:小时,12小时格式的,1-9前面没有0前缀
h:小时,12小时格式的,1-9前面有0前缀
G:小时,24小时格式的,1-9前面没有0前缀
H:小时,24小时格式的,1-9前面有0前缀
i:分钟,1-9前面有0前缀
s:秒,1-9前面有0前缀

四、default过滤器
如果值被评估为False。比如[],"",None,{}等这些在if判断中为False的值,都会使用default过滤器提供的默认值。实例代码如下:

{{ value|default:"没有值"}}

当value是等于一个空的字符串。比如"",那么以上代码将会输出"没有值"

五、default_if_none过滤器
如果值是None,那么将会使用default_if_none提供的默认值。这个是和“default”有区别的,default是所有被评估为False的都会使用默认值。而default_if_none则只有在值等于None时才起作用。

{{ value|default_if_none:"该值为:None"}}

如果value是等于""即空字符串,那么上面的代码输出的也是空字符串;如果value是一个None值,以上代码才会输出:该值为:None。

六、first过滤器
返回列表、元组、字符串中的第一个元素。实例代码如下:

{{ value|first}}

如果value是[1,2,3],那么输出将会是1。

七、last过滤器
返回最后一个值,用法和first类似就不再赘述了。

八、floatformat过滤器
使用四舍五入的方式格式化一个浮点类型。如果这个过滤器没有传递任何参数。那么只会在小数点后保留一个小数,如果小数后面全是0,那么只会保留整数。当然也可以传递一个参数,标识具体保留几位小数。
1、如果没有传递参数

value:25.2548
模板:{{ value|folatformat }}
结果:25.3

2、传递参数

value:25.2548
模板:{{ value|folatformat:3 }}
结果:25.255

九、join过滤器

类似与python中的join,将列表、元组、字符串用指定的字符进行拼接。

value:[1,2,3]
模板:{{ value|join:"、"}}
结果:1、2、3

十、length过滤器:

获取一个列表、元组、字符串、字典的长度。

{{value|length}}

如果value是等于['1','e','r'],那么以上代码将会输出3,如果value值为None,则返回0。

十一、lower过滤器
将值中所有的字符全部转换成小写

{{ value|lower}}

十二、upper

将值中所有字母转换成大写,用法和lower一样。

十三、random过滤器
在被给的列表、字符串、元组中随机选择一个值。

{{value|random}}

如果value是等于['a','b','c'],那么会从中随机选择一个。

十四、safe过滤器
标记一个字符串是安全的。机会关掉这个字符串的自动转义。

{{value|safe}}

如果value是一个不包含任何特殊字符的字符串,比如<a>这种,那么以上代码就会把字符串正常的输入。如果value是一串html代码,那么以上代码会将这个html代码渲染到浏览器中。

十五、slice过滤器
类似与python中的切片操作。

{{some_list|slice:"3:"}}

以上代码将会将some_list从3开始做切片操作。

十六、stringtags过滤器:
删除字符串中所有的html标签。

{{value|striptags}}

如果value是<span>hello world</span>,那么以上代码将会输出hello world。

十七、truncatechars过滤器:
如果给定的字符串长度超过了过滤器指定的长度。那么将会进行切割,并且会拼接3个点作为省略号。实例代码如下:

{{ value|truncatechars:5}}

如果value是等于"阳光明媚的天气",那么输出的结果为"阳光..."。注意3个点也占字符。

十八、truncatechars_html过滤器:
类似于truncatechars,只不过是不会切割HTML标签。

{{ value|truncatechars_html:5}}

如果value是<p>阳光明媚的天气</p>,那么输出是<p>阳光...</p>

django 模版内置的过滤器的更多相关文章

  1. django的内置信号

    Model singnalspre_init 在model执行构造方法之前自动触发post_init django的model在执行构造方法之后,自动触发pre_save django的对象保存之前, ...

  2. Django的内置登录、退出、修改密码方法

    Django中内置的登录.退出.修改密码方法. 1.url.py中使用django.contrib.auth中的views函数,django.views.generic中的TemplateView函数 ...

  3. django的内置分页

    本节内容 自定义一个简单的内置分页 Django内置分页 Django内置分页扩展(继承) 自定义内置组件 自定义一个简单的内置分页 先用django自己自定制一个简单的内置分页,大概掌握内置分页的底 ...

  4. Django 使用 内置 content-type

    django内置的content-type组件, 记录了项目中所有model元数据的表 可以通过一个ContentType表的id和一个具体表中的id找到任何记录,及先通过ContenType表的id ...

  5. Django扩展内置User类

    内置User类 使用内置User可以方便实现登录验证,利用Admin管理界面还可以方便添加.删除.修改用户. 一个内置的User类定义了以下字段: username: 用户名 password: 密码 ...

  6. Django常用内置过滤器

    1.add 此过滤器将首先尝试将两个值强制为整数.如果失败,它会尝试将值一起添加.这将工作在一些数据类型(字符串,列表等)和失败在其他人.如果失败,结果将是一个空字符串. {{ value | add ...

  7. django+mongodb 内置用户控制

    0x01 项目:django2.1 数据库:mongodb 这是一个很蛋疼的组合 mongodb并非官方支持使用的数据库,这意味着要使用user group permissions等进行用户和权限控制 ...

  8. Django ContentType内置组件

    一.引出问题 假如有这两张表,它们中的课程可能价格不一样.周期不一样.等等...不一样...,现在有一张价格策略表,怎么就用一张表报保存它们之间不同的数据呢? 可能你会这样: 确实是行!但是,如果有很 ...

  9. Django Form 内置字段

    常用字段: Field required=True, 是否允许为空 widget=None, HTML插件 label=None, 用于生成Label标签或显示内容 initial=None, 初始值 ...

随机推荐

  1. php 发送手机验证码

    嗯哼,做为一个好的程序猿,一定要给顾客爸爸剁手的时候,充分的告诉他,你剁完手了,所以不只有邮件通知还要有手机短信的通知,今天就来写一下php发送验证码 1.首先我就写了几个个方法,因为配置在后台,直接 ...

  2. Python socket day3

    UDP聊天室 本地回环(127.0.0.1) 本地回环是每台电脑都有的,只能用于自身电脑的通讯,无论你的IP地址是多少,只要发送方输入的目的IP为127.0.0.1 ,自身便能接受得到数据 测试本地回 ...

  3. 【PAT甲级】1085 Perfect Sequence (25 分)

    题意: 输入两个正整数N和P(N<=1e5,P<=1e9),接着输入N个正整数.输出一组数的最大个数使得其中最大的数不超过最小的数P倍. trick: 测试点5会爆int,因为P太大了.. ...

  4. 【PAT甲级】1082 Read Number in Chinese (25 分)

    题意: 输入一个九位整数,输出它的汉字读法(用拼音表示). trick: 字符串数组""其实会输出一个空格,而不是什么都不输出,导致测试点0和4格式错误. AAAAAccepted ...

  5. 基于SILVACO ATLAS的a-IGZO薄膜晶体管二维器件仿真(03)

    今天逛ResearchGate的时候发现了一个不错的Atlas入门教程:Step by step with ATLAS Silvaco点击链接免费下载.. Atlas代码结构 当然可能有一点太基础了. ...

  6. Steam 游戏 《Crashlands(崩溃大陆)》修改器制作-[先使用CE写,之后有时间的话改用CheatMaker](2020年寒假小目标12)

    日期:2020.02.15 博客期:155 星期六 [温馨提示]: 只是想要修改器的网友,可以直接点击此链接下载: 只是想拿CT文件的网友,可以直接点击此链接下载: 没有博客园账号的网友,可以将页面下 ...

  7. sql注入小姿势

    利用/*!union*/可以绕过对union的过滤

  8. 下载完idea后需要做的设置

    1.设置字体 2.安装插件 3.设置文件头(C:\Users\用户名\.IntelliJIdea2019.2\config\fileTemplates\includes下有个文件叫做File Head ...

  9. mysql的一些不常用语句

    今天写项目,用的ThinkPHP,写的时候有点费劲,原因嘛 无非是对框架或者mysql的一些知识的遗忘. 1.为了配合ThinkPHP中的控制器,需要修改数据库中表名,一时想不起来,幸好有百度,问题很 ...

  10. AgileReview 代码检视工具使用

    AgileReview 它是一个eclipse插件. http://www.agilereview.org/ 官网地址. 四种下载插件方式. 1.Marketplace QuickInstall    ...