Django template层之json报文遍历总结
Django template层之json报文遍历总结
by:授客 QQ:1033553122
测试环境
Win7
Django 1.11
实例
Views.py
def home(request):
home_page = 'website/pages/home.html'
nav_menus = {'menus':[]}
nav_menus_queryset = LeftNavigation.objects.filter(parent_id=0).order_by('order').values()
for menu in nav_menus_queryset:
menu['sub_menus'] = []
sub_nav_menus_queryset = LeftNavigation.objects.filter(parent_id=menu['id']).order_by('order').values()
for sub_menu in sub_nav_menus_queryset:
menu['sub_menus'].append(sub_menu)
nav_menus['menus'].append(menu)
return render(request, home_page, {'leftNavMenus': nav_menus})
说明:其中nav_menus的具体值如下
{
"menus": [{
"parent_id": 0,
"url": "",
"id": 1,
"icon_style": "glyphiconglyphicon-cog",
"sub_id": "collapse1",
"sub_menus": [{
"parent_id": 1,
"url": "http: //www.baidu.com",
"id": 2,
"icon_style": "glyphiconglyphicon-cog",
"sub_id": "",
"order": 1,
"menu_name": "项目管理1",
"is_sub_open": 0
}, {
"parent_id": 1,
"url": "http: //www.baidu.com",
"id": 3,
"icon_style": "glyphiconglyphicon-cog",
"sub_id": "",
"order": 5,
"menu_name": "项目管理2",
"is_sub_open": 0
}],
"order": 1,
"menu_name": "项目管理",
"is_sub_open": 1
}, {
"parent_id": 0,
"url": "",
"id": 40,
"icon_style": "glyphiconglyphicon-cog",
"sub_id": "collapse2",
"sub_menus": [],
"order": 1,
"menu_name": "数据管理",
"is_sub_open": 0
}, {
"parent_id": 0,
"url": "",
"id": 20,
"icon_style": "glyphiconglyphicon-cog",
"sub_id": "collapse2",
"sub_menus": [{
"parent_id": 20,
"url": "http: //www.baidu.com",
"id": 21,
"icon_style": "glyphiconglyphicon-cog",
"sub_id": "",
"order": 1,
"menu_name": "任务管理1",
"is_sub_open": 0
}],
"order": 2,
"menu_name": "任务管理",
"is_sub_open": 0
}]
}
template
以下是不同的前端模板代码下,访问页面结果
模板1

模板2

模板3

运行结果

模板4

运行结果

模板5

运行结果

Django template层之json报文遍历总结的更多相关文章
- Django——模板层(template)(模板语法、自定义模板过滤器及标签、模板继承)
前言:当我们想在页面上给客户端返回一个当前时间,一些初学者可能会很自然的想到用占位符,字符串拼接来达到我们想要的效果,但是这样做会有一个问题,HTML被直接硬编码在 Python代码之中. 1 2 3 ...
- Django.template框架 template context (非常详细)
前面的章节我们看到如何在视图中返回HTML,但是HTML是硬编码在Python代码中的 这会导致几个问题: 1,显然,任何页面的改动会牵扯到Python代码的改动 网站的设计改动会比Python代码改 ...
- django——模板层
每一个Web框架都需要一种很便利的方法用于动态生成HTML页面. 最常见的做法是使用模板. 模板包含所需HTML页面的静态部分,以及一些特殊的模版语法,用于将动态内容插入静态部分. 说白了,模板层就是 ...
- Django模板层
一:模板简介 二:模板语法值变量 三: 模板之过滤器 四: 模板之标签 五:自定义标签和过滤器 一:模板简介 def current_datetime(request): now=datetime ...
- Django 视图层和模板层
目录 一.网站首页和404页面的路由配置 1. 网站首页路由 2. 404页面 二.Django视图层 1. 小白必会三板斧 (1)HttpResponse (2)render (3)redirect ...
- Django - - - -视图层之视图函数(views)
视图层之视图函数(views) 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档 ...
- Django模型层(2)
<!DOCTYPE html><html lang="zh-cn"><head><meta charset="utf-8&quo ...
- {django模型层(二)多表操作}一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询、分组查询、F查询和Q查询
Django基础五之django模型层(二)多表操作 本节目录 一 创建模型 二 添加表记录 三 基于对象的跨表查询 四 基于双下划线的跨表查询 五 聚合查询.分组查询.F查询和Q查询 六 xxx 七 ...
- Django - 模型层 - 上
一.ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人 ...
- Django模板层之templates
一 模版简介 你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python代码之中. def current_datetime(request): now ...
随机推荐
- tcc-transaction源码详解
更多优秀博文,请关注博主的个人博客:听到微笑的博客 本文主要介绍TCC的原理,以及从代码的角度上分析如何实现的:不涉及具体使用示例.本文通过分析tcc-transaction源码带大家了解TCC分布式 ...
- 【分享】FFmpeg桌面神器,集多种功能于一身,超级好用,不用命令行!
在媒体处理上,市面上有很多软件可以选择,在众多软件里面 FFmpeg 是比较独特的一款,直接选择 FFmpeg 硬核命令行工具的朋友相对较少,大多时候只是被集成在各样的软件里,如果单独拿出来使用,不少 ...
- React 的 KeepAlive 探索
什么是 KeepAlive? 用过 Vue 的童鞋都知道 Vue 官方自带了 Keep-Alive 组件,它能够使组件在切换时仍能保留原有的状态信息,并且有专门的生命周期方便去做额外的处理.该组件在很 ...
- VisionPro学习笔记(7)——FitLineTool
如果需要了解其他图像处理的文章,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice ...
- 夜莺项目发布 v6.1.0 版本,增强可观测性数据串联
大家好,夜莺项目发布 v6.1.0 版本,这是一个中版本迭代,不止是 bugfix 了,而是引入了既有功能的增强.具体增强了什么功能,下面一一介绍. 1. 增强可观测性数据串联 从 v6.1.0 开始 ...
- 关于Elasticsearch查找相关的问题汇总(match、match_phrase、query_string和term)
关于Elasticsearch查找相关的问题汇总(match.match_phrase.query_string和term) 查询全部: { "query": { "ma ...
- 安装 Nuxt.js 的步骤和注意事项
title: 安装 Nuxt.js 的步骤和注意事项 date: 2024/6/17 updated: 2024/6/17 author: cmdragon excerpt: Nuxt.js在Vue. ...
- 前端使用 Konva 实现可视化设计器(16)- 旋转对齐、触摸板操作的优化
这一章解决两个缺陷,一是调整一些快捷键,使得 Mac 触摸板可以正常操作:二是修复一个 Issue,使得即使素材节点即使被旋转之后,也能正常触发磁贴对齐效果,有个小坑需要注意. 请大家动动小手,给我一 ...
- 在AS中logcat的设置过滤信息图文教程
[当前使用版本 1.4] logcat是调试代码的很好工具,但是因为跳出的信息过多让人目不暇接,未必能让人找到想要的信息,所以我们必须从中过滤出想要的信息 [样例]这里我们要搜索 System.out ...
- java的ConCurrentHashMap
一般的应用的编程,用到ConCurrentHashMap的机会很少,就象大家调侃的一样:只有面试的时候才用得着. 但还是有. 网上关于这个的资料,多如牛毛,大部分是原理分析和简单例子. 原理的核心就一 ...