zoukankan      html  css  js  c++  java
  • django 模版内置的过滤器

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

    {{ value|add:"2"}}

    如果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>

  • 相关阅读:
    CSDN如何能实现直接粘贴把图片上传到服务器中
    Blog如何能实现直接粘贴把图片上传到服务器中
    博客如何能实现直接粘贴把图片上传到服务器中
    wordpress如何能实现直接粘贴把图片上传到服务器中
    CMS如何能实现直接粘贴把图片上传到服务器中
    html+Nginx超大视频上传解决方案
    《TrustZone for Armv8-A》阅读笔记
    《ARM Trusted Firmware》阅读笔记
    《Linux/Unix系统编程手册》 第29章 线程:介绍
    《Linux/UNIX系统编程手册》第28章 详述进程创建和程序执行
  • 原文地址:https://www.cnblogs.com/xshan/p/12121972.html
Copyright © 2011-2022 走看看