layuimini父子菜单-python实现
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了layuimini父子菜单-python实现,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2117字,纯文字阅读大概需要4分钟。
内容图文
现在项目使用了laymini的后台框架,非常不错,美中不足,没有构建菜单的python示例,遂自己写了一个,供大家参考:
数据库表结构
CREATE TABLE `system_menu` ( `id` int(11) unsigned NOTNULL AUTO_INCREMENT COMMENT ‘ID‘, `pid` int(11) unsigned NOTNULLDEFAULT‘0‘ COMMENT ‘父ID‘, `title` varchar(100) NOTNULLDEFAULT‘‘ COMMENT ‘名称‘, `icon` varchar(100) NOTNULLDEFAULT‘‘ COMMENT ‘菜单图标‘, `href` varchar(100) NOTNULLDEFAULT‘‘ COMMENT ‘链接‘, `target` varchar(20) NOTNULLDEFAULT‘_self‘ COMMENT ‘链接打开方式‘, `sort` int(11) DEFAULT‘0‘ COMMENT ‘菜单排序‘, `status` tinyint(1) unsigned NOTNULLDEFAULT‘1‘ COMMENT ‘状态(0:禁用,1:启用)‘, `remark` varchar(255) DEFAULTNULL COMMENT ‘备注信息‘, `create_at` timestampNULLDEFAULTNULL COMMENT ‘创建时间‘, `update_at` timestampNULLDEFAULTNULL COMMENT ‘更新时间‘, `delete_at` timestampNULLDEFAULTNULL COMMENT ‘删除时间‘, PRIMARYKEY (`id`), KEY `title` (`title`), KEY `href` (`href`) ) ENGINE=InnoDB AUTO_INCREMENT=250DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT=‘系统菜单表‘;
python 示例
from flask import jsonify, request, Blueprint, json, make_response from flask_login import login_required, current_user,login_user,logout_user,utils from app import common from app import loginManager from app.models.systemmenu import SystemMenu def init_api(app): @app.route(‘/xxx/api/v1.0/menus‘, methods=[‘GET‘]) def getMenu(): systemMenu = SystemMenu() menuList = systemMenu.getByStatus(1) if menuList: homeinfo={"title":"首页","href":"page/welcome-1.html?t=1"} logoinfo={"title":"LAYUI MINI","image":"images/logo.png","href": ""} menuList = buildMenuChild(0, menuList)
# 合成菜单 menuAllList = dict() menuAllList["homeInfo"] = homeinfo menuAllList["logoInfo"] = logoinfo menuAllList["menuInfo"] = menuList result = make_response(jsonify(menuAllList)) else: result = None return result # 递归创建菜单列表def buildMenuChild(pid,menulist): treeList = dict() node = [] for item in menulist: if (item.pid == pid): nodetmp = {"title":item.title,"icon":item.icon,"href":item.href,"target":item.target} child = buildMenuChild(item.id,menulist) if (child != {}): nodetmp.update({"child":child}) node.append(nodetmp) treeList = node return treeList
原文:https://www.cnblogs.com/qpanda/p/14731240.html
内容总结
以上是互联网集市为您收集整理的layuimini父子菜单-python实现全部内容,希望文章能够帮你解决layuimini父子菜单-python实现所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。