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标签,页面将绑定数据的样式模板rbac/static_menu.html渲染到页面。
inclusion_tag 基本使用的更多相关文章
- django inclusion_tag
一种比较普遍的tag类型是只是渲染其它模块显示下内容,这样的类型叫做Inclusion Tag. 例如,实现以下tag: {% books_for_author author %} 渲染结果为: &l ...
- python Tags 母板 组件 静态文件相关 自定义simpletag inclusion_tag
一.Tags(一)for 1.基本用法 <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% e ...
- $Django 客户端->wsgi->中间组件->urls->views(model,template) 总结+补充(事物,choices,inclusion_tag)!
1 HTTP协议:(重点) -请求 -请求首行 -GET /index HTTP/1.1 \r\n -请求头部 -key:value------>\r\n分割 _ke ...
- python全栈开发day65-templates:tags、母版和继承、组件、静态文件相关、simple_tag和inclusion_tag
一.昨日内容回顾 1.MVC和MTV框架 MVC: model 模型 存写数据 view 视图 给用户展示页面 control 控制器 负责调度 传递指令 MTV: M:model 模型 OR ...
- 定义一个包含标签inclusion_tag, 调用模板时报错.. 应该是路径 不对吧...我的templates 是放在app 目录下的.<待处理>
# 自定义模板标签. 标签的作用,在模板中 实现逻辑,如if ,for 等 from django.template import Library from datetime import datet ...
- django——inclusion_tag
inclusion_tag() 原型: django.template.Library.inclusion_tag() 主要作用:通过渲染一个模板来显示一些数据. 例如,Django的Admin界面使 ...
- Django MTV simple_tag filter inclusion_tag
Django框架 模型(Model).视图(View)和控制器(Controller),具有耦合性低.重用性高.生命周期成本低等优点. MVC 框架 -- Model -View -Controll ...
- Django模版语言的复用 1. include标签--模版导入 2.inclusion_tag自定义标签--模版导入 3.母版
include标签--模版导入 ''' 前提:项目中,往往会出现多个页面拥有一个或几个相同的页面版块,或是一个页面多个页面版块是相同的 如何运用:可以将多个样式标签的集合进行封装,对外提供版块的名字( ...
- Django模版语言inclusion_tag的用法。
inclusion_tag.它多用于一个HTML片段的.例如我写的一个BBS项目中. 一个博主的主页面的左侧栏和查看博主某篇文章的页面的左栅栏的一样的.为了不用重复写同样的代码.且提高页面的扩 ...
- inclusion_tag 界面的嵌套 和渲染
后端的html渲染到前端: 如果后端直接定义的是html标签,传到前端的时候因为浏览器的安全机制就会直接渲染成字符串如果想要渲染成需要的标签,就需要在后端用make_save()进行包裹,或者直接在前 ...
随机推荐
- vue中搜索关键词,使文本标红
UserHead.vue中搜索框: <!-- 搜索 --> <el-col :span="6" :offset="8" class=" ...
- 采用pacemaker+corosync实现postgresql双机热备、高可用方案
环境说明 参照上章已完成postgresql流复制配置,并关闭postgres服务. su - postgres pg_ctl -D /data/postgresql/data/ stop -m fa ...
- mysql导出函数或者存储过程 设置显示方式
mysql导出函数或者存储过程 mysqldump -hhostname -uusername -ppassword -ntd -R databasename > /app/backupflie ...
- R语言——ifelse函数
在数据处理中,经常会遇到要对判断结果做处理的情况.if函数是经常遇到的. ifelse(cond,statment1,statment2) 如果cond成立,执行statment1,否则执行statm ...
- Codeforces Round #425 (Div. 2) - D
题目链接:http://codeforces.com/contest/832/problem/D 题意:给定一棵n个点的树,然后给你q个询问,每个询问为三元组(a,b,c),问你从这三个点中选取一个作 ...
- git如何上传大文件,突破大小限制
Github中单个文件的大小限制是100MB,为了能突破这个限制,我们需要使用Git Large File Storage这个工具, git lfs install git lfs track &qu ...
- ELK windows下部署测试
操作系统 win7 (当时想在linux下部署,虚拟内存过小,转而在windows下) 版本说明 elasticsearch-6.6.2 (elasticsearch-head-master插件) ...
- arm算力
arm 算力运算 MIPS: Million Instructions executed Per SecondDMIPS: Dhrystone Million Instructions execute ...
- 将postgresql中的数据实时同步到kafka中
参考地址:https://blog.csdn.net/weixin_33985507/article/details/92460419 参考地址:https://mp.weixin.qq.com/s/ ...
- generator (1)
function array () { console.log(arguments) }; array(1,2,3) 从这里我们可以看出 数组的迭代方法里面有一个 属性 [Symbol.iterat ...