zoukankan      html  css  js  c++  java
  • django 模板语言之 simple_tag 自定义模板

    自定义函数
    simple_tag
    a. app项目下创建templatetags目录
    b. 创建任意xxoo.py文件 用做自定义py函数
      c. 创建template对象 register
    在函数或者类 前面 加上创建的对象装饰器register  @register.simple_tag
    对象不能改名字 必须是register
    
    
    register = template.Library()
       
    @register.simple_tag
    #!/usr/bin/env python
    #coding:utf-8
    from django import template
    from django.utils.safestring import mark_safe
       
    register = template.Library()
       
    @register.simple_tag
    def my_simple_time(v1,v2,v3):
        return  v1 + v2 + v3
    d. 
    @register.simple_tag
    def func(a1,a2,a3....)
    return "asdfasd"

    e. settings中注册APP

    f.在使用自定义simple_tag的html文件中导入之前创建的 xx.py 文件名,
    顶部 {% load xxoo %}

    g.使用simple_tag
    格式
    {% 函数名 arg1 arg2 %} arg1 arg2 是传参数 py文件的函数有参数,需要传参数


    缺点:
    不能作为if条件
    优点:
    参数任意



     app项目下创建templatetags目录,创建自定义py文件

    foo.py 代码

    from django import template
    from django.utils.safestring import mark_safe
    
    register = template.Library()
    
    @register.simple_tag
    def BOO(a1,a2):
        return a1+a2


    setting 注册app

    在使用自定义simple_tag的html文件中导入之前创建的 xx.py 文件名,使用simple_tag

    {% load foo %}
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="x-ua-compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Title</title>
    </head>
    <body>
         {% BOO 1 5 %}
    </body>
    </html>

     


    
    
    
     
     
  • 相关阅读:
    ubuntu 12.04 LTS 如何使用更快的更新源
    虚拟机安装ubuntu问题解决办法
    云计算
    Hadoop多节点集群安装配置
    Apache Lucene学习笔记
    Struts2运行流程
    数据结构与算法分析 java语音描述(引论)
    事物与分布式事物原理实践
    Get,Post请求中文乱码问题有效解决方法
    Vue2.5开发去哪儿网App 第四章笔记 下
  • 原文地址:https://www.cnblogs.com/mingerlcm/p/10094429.html
Copyright © 2011-2022 走看看