inclusion_tag 基本使用
Posted liuxu2019
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了inclusion_tag 基本使用相关的知识,希望对你有一定的参考价值。
inclusion_tag的用途
inclusion_tag可以实现从后台往前端传递绑定数据的样式,一般用来动态显示模板页面中显示固定格式的数据。
inclusion_tag的用法
step1: 编写前端页面样式模板
rbac/templates/rbac/static_menu.html
<div class="static-menu">
{% for item in menu_list %}
<a href="{{ item.url }}">
<span class="icon-wrap">
<i class="fa {{ item.icon }}"></i></span>{{ item.title }}
</a>
{% endfor %}
</div>
step2: 使用inclusion_tag
rbac/templatetags/rbac.py
from django.template import Library
from django.conf import settings
register = Library()
@register.inclusion_tag("rbac/static_menu.html")
def static_menu(request):
"""
动态显示一级菜单
:param request:
:return:
"""
menu_list = request.session[settings.PERMISSION_MENU_KEY]
return {"menu_list": menu_list}
# rbac/templatetags/rbac.py 必须是 templatetags文件夹名
# register = Library() 固定写法
# return 的数据传递给rbac/static_menu.html使用
step3: 在需要的页面位置处,引入并使用inclusion_tag
web/templates/web/layout.html
{# 先导入 #}
{% load rbac %}
<div class="pg-body">
<div class="left-menu">
<div class="menu-body">
{# 再使用 #}
{% static_menu request %}
</div>
</div>
</div>
本质:static_menu
函数给rbac/static_menu.html
提供需要的参数,然后再需要的页面位置处使用 static_menu
函数,需要时提供 static_menu
函数需要的参数。页面最后将渲染rbac/static_menu.html
的带有数据的样式。
以上是关于inclusion_tag 基本使用的主要内容,如果未能解决你的问题,请参考以下文章
Django模板渲染之自定义inclusion_tag详细使用
html PHP代码片段: - AJAX基本示例:此代码演示了使用PHP和JavaScript实现的基本AJAX功能。