Django template层之json报文遍历总结

简介: Django template层之json报文遍历总结

Django template层之json报文遍历总结


 

测试环境

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

 

 

运行结果

 

 

 

 


授客
+关注
目录
打赏
0
0
0
0
18
分享
相关文章
json转换大全 1.8遍历
json转换大全 1.8遍历
【深入探究C++ JSON库】解析JSON元素的层级管理与遍历手段
【深入探究C++ JSON库】解析JSON元素的层级管理与遍历手段
1354 2
怎么处理多层Json数据循环遍历的问题?看这里
怎么处理多层Json数据循环遍历的问题?看这里
79 0
Vue2.x-01点击按钮弹出子Vue组件,遍历JSON展示数据
Vue2.x-01点击按钮弹出子Vue组件,遍历JSON展示数据
269 0
django drf 案例--实现url编码和json和dict格式转化小工具(涉及定义模型类,序列化器,类视图,路由),接口测试
django drf 案例--实现url编码和json和dict格式转化小工具(涉及定义模型类,序列化器,类视图,路由),接口测试
Django框架开发005期 Python调用template模板网页开发调用静态资源
Django框架开发005期 Python调用template模板网页开发调用静态资源
147 0
Django框架开发004期 Python编程调用自定义Django框架template模板网页
Django框架开发004期 Python编程调用自定义Django框架template模板网页
179 0
如何使用Python对嵌套结构的JSON进行遍历获取链接并下载文件
JSON(JavaScript Object Notation)是一种基于JavaScript语言的轻量级数据交换格式,它用键值对的方式来表示各种数据类型,包括字符串、数字、布尔值、空值、数组和对象,本文展示如何使用Python对嵌套结构的JSON进行遍历获取链接并下载文件。
321 0
如何使用Python对嵌套结构的JSON进行遍历获取链接并下载文件

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等