• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Django零基础入门之常用过滤器详解

    引言:

    前面讲过了Django中使用模板变量。使用很简单,那么有没有什么关于模板变量的骚操作呢?
    答案是肯定有的,这就是本文要讲的——过滤器!

    1.过滤器

    (1)纯干货讲解:

    作用: 对变量进行过滤。在真正渲染出来之前,过滤器会根据功能处理好变量,然后得出结果后再替换掉原来的变量展示出来。

    (2)Django中实战使用——常用的过滤器:

    ①项目目录下的views.py文件:

    from django.shortcuts import render
    from django.http import HttpResponse
    
    # Create your views here.
    
    from datetime import datetime
    def index(request):
        test="THIS IS A LIST!"
        list=["A","B","C","D","E"]
        data={
            'test':test,
            'xx':'',
            'num1':1,
            'num2':2,
            'list':list,
            'now':datetime.now(),
            'html':'h1>hello django!!!/h1>',
            'float':3.1415926
        }
        return render(request, "index.html", data)
    
    

    ②项目目录下templates模板文件夹下的模板文件index.html:

    !DOCTYPE html>
    html lang="en">
    head>
        meta charset="UTF-8">
        title>测试!/title>
    /head>
    body>
    
    {#没做处理的变量:#}
    {{ test }}br>
    
    {#设置了默认值的变量  在这个值被django认为是False的时候会使用此默认值。比如:空字符串,None。#}
    {{ xx|default:'xxxxx' }}br>
    
    {#设置了只有为None时才使用默认值的变量#}
    {{ xx|default_if_none:'aaaaa'}}br>
    
    {#变为小写后的变量#}
    {{ test|lower }}br>
    
    {#先变为小写再将首字母大写后的变量#}
    {{ test|lower|capfirst }}br>
    
    {#两个数字变量相加   add:字符串相加,数字相加,列表相加,如果失败,将会返回一个空字符串#}
    {{ num1|add:num2 }}br>
    
    {#两个字符串变量相加#}
    {{ test|add:xx }}br>
    
    {#列表变量的第一个元素#}
    {{ list|first }}br>
    
    {#列表变量的最后一个元素#}
    {{ list|last }}br>
    
    {#默认的data日期时间格式#}
    {{ now|date }}br>
    {#默认的time时间格式#}
    {{ now|time }}br>
    {#这是data过滤器的年月日24小时制时间格式#}
    {{ now|date:'Y/m/d/H:i:s' }}br>
    {#这是time过滤器的时分秒12小时制时间格式#}
    {{ now|time:'h:i:s' }}br>
    
    {#这是字符串的join方法  跟python中join一样的用法#}
    {{ list|join:'oooo' }}br>
    
    {#这是字符串的长度方法#}
    {{ test|length }}br>
    
    {#这是列表的长度是否为4#}
    {{ list|length_is:4 }}br>
    
    {#下面这俩有xxx.html类型的,针对html,截断标签中的字符,而不会截断标签#}
    {#这是字符串只显示4个字符,其余省略(但是占3位)#}
    {{ test|truncatechars:7 }}br>
    {#这是字符串只显示2个单词,其余省略(不占位)#}
    {{ test|truncatewords:2 }}br>
    
    {#这是字符串的切片#}
    {{ test|slice:'1:4' }}br>
    
    {#这是列表的切片#}
    {{ list|slice:'2' }}br>
    
    {#这是含html标签的字符串#}
    {{ html }}br>
    
    {#这是去掉字符串中的html标签#}
    {{ html|striptags }}br>
    
    {#这是关掉自动转义,使字符串中html标签生效#}
    {{ html|safe }}br>
    
    {#这是没做处理的小数#}
    {{ float }}br>
    {#这是保留了一位小数#}
    {{ float|floatformat }}br>
    {#这是保留了两位小数#}
    {{ float|floatformat:'2' }}
    
    /body>
    /html>
    

    ③效果展示:

    date和time过滤器格式:

    拓展——简介自动转义:

    什么是自动转义?
    自动转义是将变量的一些特殊字符,比如左箭头()、右箭头(>)转义成html代码,这样做的目的是为了处理一些不安全的变量。

    :转义成lt;
    >:转义成gt;
    ‘:转义成#39;
    “:转义成quot;
    :转义成
    
    

    到此这篇关于Django零基础入门之常用过滤器详解的文章就介绍到这了,更多相关Django过滤器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • 详解Django模板层过滤器和继承的问题
    • Django 模板中常用的过滤器实现
    • python使用布隆过滤器的实现示例
    • Python filter过滤器原理及实例应用
    • Django-rest-framework中过滤器的定制实例
    • 布隆过滤器的概述及Python实现方法
    • Python+Redis实现布隆过滤器
    上一篇:浅谈Python的字典键名可以是哪些类型
    下一篇:Django零基础入门之静态文件的引用
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Django零基础入门之常用过滤器详解 Django,零,基础,入门,之,常用,