zoukankan      html  css  js  c++  java
  • Django Template层之自定义tag

    Django Template层之自定义tag

    by:授客 QQ1033553122

     

    测试环境

    Win7

    Django 1.11

     

    实践

    步骤1

    应用根目录下,新建templatetags包目录(注意:该目录名称是约定的),并在该目录下新建自定义py文件(例中为project_dir/website/website_template_tags.py)

    代码布局如下:

    AutoTestPlatform/

        __init__.py

        models.py

       templatetags/

            __init__.py

            website_template_tags.py

        views.py

     

    website_template_tags.py

    # -*- encoding:utf-8 - *-

     

    __author__ = 'shouke'

     

    from django import template

    from django.conf import settings

     

    register = template.Library() # 注册tag

     

    @register.simple_tag # 装饰器表名函数是一个标签,tag类型中的一种

    @register.tag('user_name')

    def get_username(session):

        username = session.get('username')

        return username

     

    说明:

    @register.simple_tag # 表名函数是一个tag,类型为Simple tag

     

    @register.tag('user_name') #注册标签为模块的Library实例,name为模板标签名,该参数如果为空,则默认使用函数名称为模板标签名称

     

     

    步骤2

    html模板中使用自定义tag

     

    {%  loadwebsite_template_tags %}

     

    ……

    <p>user name is {% user_namerequest.session %}</p>

    ……

     

     

     

    参考链接:

    https://docs.djangoproject.com/en/2.1/howto/custom-template-tags/

     

  • 相关阅读:
    刷新SqlServer数据库中所有的视图
    代码的阅读
    unity3d的模型规范
    XOCDE5开发
    unity3d自动寻路教程
    u3d性能优化
    U3D层的运用
    关于unity3d插件的自动打包
    unity3d各平台通讯原生的平台API的说明
    uniSWF使用注意事项
  • 原文地址:https://www.cnblogs.com/shouke/p/13351907.html
Copyright © 2011-2022 走看看