Django快速入门--10分钟学会Django的基本部署与运行(3)

django的过滤器

过滤器与管道的区别

其实将其与linux下的管道相比而言,两者十分相似。前者的输出变为后者的输入.将前一步的输出输入到下一步进行处理。
例子:
在html页面书写:

{% for book in book_list%}
        
  • {{book | upper}}
  • {% endfor %}

    在views.py书写:

    def index(request):
        t = loader.get_template("index.html")
        book_list = ["python","ruby","php"]
        user = {"name":"tom","age":0,"sex":"male"}
    
        c = Context({"book_list": book_list})
        return HttpResponse(t.render(c))
    

    效果如图:

    Django快速入门--10分钟学会Django的基本部署与运行(3)_第1张图片

    如何自定义过滤器

    • 现在文件夹里建立templatags的文件夹
    • 在建立起init.py
    • 在建立相应的过滤器percent.py来进行过滤

    例子:我要在每个输出的字符串后面加入%

    from django import template  
    register = template.Library()//引入过滤器的图书馆
    def percent (value):
        return value+"%"
    register.filter(percent)//注册你自己定义的过滤器
    

    在html文件当中输入
    1.首先导入你写好的过滤器
    {% load percent%}
    2.加入过滤器

    {% for book in book_list%}
           {% load percent%}
           
  • {{book | upper| percent}}
  • {% endfor %}

    效果如下:

    Django快速入门--10分钟学会Django的基本部署与运行(3)_第2张图片
    效果

    你可能感兴趣的:(Django快速入门--10分钟学会Django的基本部署与运行(3))