zoukankan      html  css  js  c++  java
  • django自定义模板和过滤器

    -自定义过滤器
                -1 先app是不是已经在setting中注册
                -2 在app下创建一个templatetags(****名字不能变***)的文件夹(模块)
                -3 在模块下创建一个py文件,名字随意:mytag.py
                -4 # 第一步,导入template
                   from django.template import Library
                   # 第二步,定义一个叫register的变量=template.Library()
                   register = Library()
                -5 写一个函数,用@register.filter(name='yyy')装饰一下(可以指定别名)
                    def str_add(str1, str2): #一定要有返回值
                        # 业务逻辑很复杂
                        return str1 + str2
                -6 在模板里:(新定定义的标签,过滤器,都要重启程序)
                    -{% load mytag %}
                    -{{'lqz'|str_add:'nb'}}
            -自定义标签:
                -1-4:前4步,根过滤器的定义完全一样
                -5 只是装饰器不一样
                @register.simple_tag()
                    def add_nb(value):
                        return value+'nb'
                -6 在模板里:(多个参数,以空格区分)
                    -{% load mytag %}
                    -{% add_nb 'lqz'%}
    from django import template
    
    register = template.Library()
    
    
    
    @register.filter(name = 'yyy')
    def str_add(str1,str2):
        #业务逻辑可以很复杂
        return str1 + str2
    
    @register.simple_tag()
    def add_nb(value):
        return value+'hahah'
    
    @register.simple_tag()
    def add_3nb(value1,value2,value3):
        return value1+value2+value3+'hahah'

  • 相关阅读:
    arrow
    简单库函数
    计算机视觉从入门到放肆
    合并排序算法
    React应用数据传递的方式
    发布一个npm package
    绝对路径/相对路径/根路径
    常见的数据处理方法
    从设计稿到实现React应用(分类数据处理)
    提高React组件的复用性
  • 原文地址:https://www.cnblogs.com/zhaijihai/p/9936885.html
Copyright © 2011-2022 走看看