Django-自定义过滤器

views.py中发送字符串hello,world,如果想到html中首个字母大写,或者小写,或者全部大写。可以

在模板文件template的html中添加管道过滤。

这里放了很多管道,大写,小写,再首个字母大写。最后的一个percent是自定义的过滤

{{xiaowang.sayHello | upper | lower | capfirst |percent}}

自定义过滤

  1. 在应用目录下创建一个templatetags目录,其中放一个init.py文件,空的也可以,再自己写一个percent.py文件 一会load加载的是文件的名字

  2. 在percent.py文件中写入

    from django import template 
    register = template.Library()
    def percent(value):
     return value+'%'
     
    register.filter(percent)
    

    作用是在字符串后加一个% 这里只是简单的例子

  3. 使用percent函数

    {% load percent%}
         
  4. {{xiaowang.sayHello | upper | lower | capfirst |percent}}
  5. 先加载后使用

总结

  • 创建templatetags目录,中创建init.py文件,和一个.py文件
  • .py文件中写入需要的功能,记得函数名字func
  • template中的html使用前先加载.py文件,{% load percent%} 再用|

你可能感兴趣的:(Django-自定义过滤器)