基于Django+Layui的组件化基础开发平台
项目介绍
一款 Python 语言基于Django、Layui、MySQL等框架精心打造的一款模块化、高性能、企业级的敏捷开发框架,本着简化开发、提升开发效率的初衷触发,框架自研了一套个性化的组件,实现了可插拔的组件式开发方式:单图上传、多图上传、下拉选择、开关按钮、单选按钮、多选按钮、图片裁剪等等一系列个性化、轻量级的组件,是一款真正意义上实现组件化开发的敏捷开发框架。
项目特点
- 模块化、松耦合
- 模块丰富、开箱即用
- 简洁易用、快速接入
- 文档详尽、易于维护
- 自顶向下、体系化设计
- 统一框架、统一组件、降低选择成本
- 开发规范、设计模式、代码分层模型
- 强大便捷的开发工具链
- 设计为团队及企业使用
集成模块
- 用户管理:用于维护管理系统的用户,常规信息的维护与账号设置。
- 角色管理:角色菜单管理与权限分配、设置角色所拥有的菜单权限。
- 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
- 职级管理:主要管理用户的职级。
- 岗位管理:主要管理用户担任职务。
- 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
- 字典管理:对系统中常用的较为固定的数据进行统一维护。
- 配置管理:对系统的常规配置信息进行维护,网站配置管理功能进行统一维护。
- 通知公告:系统通知公告信息发布维护。
- 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
- 登录日志:系统登录日志记录查询包含登录异常。
- 代码生成:一键生成模块CRUD的功能,包括后端和前端等相关代码。
- 案例演示:常规代码生成器一键生成后的演示案例。
软件信息
- 软件名称:DjangoAdmin敏捷开发框架Django+Layui版本
- 官网网址:https://www.djangoadmin.cn
- 文档网址:http://docs.django.layui.djangoadmin.cn
系统演示
- 演示地址:http://manage.django.layui.djangoadmin.cn
版本说明
版本名称 | 版本说明 | 版本地址 |
---|---|---|
Django+Layui混编版 | 采用Django、Layui、MySQL等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Django_Layui |
Flask+Layui混编版 | 采用Flask、Layui、MySQL等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Flask_Layui |
Tornado+Layui混编版 | 采用Tornado、Layui、MySQL等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Tornado_Layui |
Django+EleVue前后端分离版 | 采用Django、Vue、ElementUI等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Django_EleVue |
Flask+EleVue前后端分离版 | 采用Flask、Vue、ElementUI等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Flask_EleVue |
Tornado+EleVue前后端分离版 | 采用Tornado、Vue、ElementUI等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Tornado_EleVue |
Django+AntdVue前后端分离版 | 采用Django、Vue、AntDesign等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Django_AntdVue |
Flask+AntdVue前后端分离版 | 采用Flask、Vue、AntDesign等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Flask_AntdVue |
Tornado+AntdVue前后端分离版 | 采用Tornado、Vue、AntDesign等框架研发 | https://gitee.com/djangoadmin/DjangoAdmin_Tornado_AntdVue |
核心组件
- 单图上传组件
{% image "avatar|头像|90x90|建议上传尺寸450x450|450x450" data.avatar "" 0 %}
- 多图上传组件
{% album "avatar|图集|90x90|20|建议上传尺寸450x450" "" "png,jpg" 10 %}
- 下拉选择组件
{% select "gender|1|性别|name|id" "1=男,2=女,3=保密" data.gender %}
- 单选按钮组件
{% radio "gender|name|id" data 1 %}
- 复选框组件
{% checkbox "gender|name|id" data 1 %}
- 城市选择组件
{% city data.district_code 3 1 %}
- 开关组件
{% switch "status" "在用|禁用" data.status|default:1 %}
- 日期组件
{% date "birthday|1|出生日期|date" data.birthday %}
- 图标组件
{{ "icon"|icon:data.icon }}
- 穿梭组件
{% transfer "func|0|全部节点,已赋予节点|name|id|220x350" "1=列表,5=添加,10=修改,15=删除,20=详情,25=状态,30=批量删除,35=添加子级,40=全部展开,45=全部折叠,50=导出数据,55=导入数据,60=分配权限,65=重置密码" funcList %}
模板布局
- Layout布局
<!DOCTYPE html>
<html>
<!-- 头部开始 -->
{% include "public/header.html" %}
<!-- 头部结束 -->
<body><!-- 主体部分开始 -->
<div class="layui-fluid"><div class="layui-card"><div class="layui-card-body"><!-- 内容区 -->{% block content %}{% endblock %}</div></div>
</div>
<!-- 主体部分结束 --><!-- 脚部开始 -->
{% include "public/footer.html" %}
<!-- 脚部结束 -->
</body>
</html>
- 头部模板
<head>{% load static %}<meta charset="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"><title>Django+Layui敏捷开发框架</title><link href="{% static '/assets/images/favicon.ico' %}" rel="icon"><link type="text/css" rel="stylesheet" href="{% static '/assets/libs/layui/css/layui.css' %}"/><link type="text/css" rel="stylesheet" href="{% static '/assets/module/admin.css' %}"/><!--[if lt IE 9]><script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js' %}"></script><script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js' %}"></script><![endif]--><script type="text/javascript" src="{% static '/assets/libs/layui/layui.js' %}"></script><script type="text/javascript" src="{% static '/assets/js/common.js' %}"></script><script type="text/javascript">var url = window.location.pathname.substring(1);var item = url.split("/");var C = item[0];var A = item[1];var cUrl = "/" + C;</script>
</head>
- 脚部模板
<!-- JS部分 -->
<script type="text/javascript">var url = window.location.pathname.substring(1);var item = url.split("/");var jsUrl = "/static/module/djangoadmin_" + item[0] + ".js";document.write("<script src='" + jsUrl + "'><\/script>");
</script>
模块展示
特别鸣谢
感谢Django、Layui等优秀开源项目。
版权声明
本文章版权归作者所有,未经作者允许禁止任何转载、采集,作者保留一切追究的权利;
基于Django+Layui的组件化基础开发平台相关推荐
- Aooms_基于SpringCloud的微服务基础开发平台实战_002_工程构建
为什么80%的码农都做不了架构师?>>> 一.关于框架更名的一点说明 最近在做年终总结.明年规划.还有几个项目需要了结.出解决方案,事情还比较多,死了不少脑细胞,距离上一篇文章 ...
- java组件化的优势_组件化编程开发如何判断组件的优劣性
随着互联网的不断发展,越来越多的程序员都在学习不同的编程开发方式,而组件化编程开发就是其中的一个常用开发方法.今天我们就一起来了解一下,组件化开发中关于组件的优劣性应该如何判断. 认识组件 随着近些年 ...
- 如何通过组件化提高开发效率?
在软件开发过程中,大到业务模块的划分,小到技术组件的开发,都属于组件化的思考范畴内.很多时候我们到网上搜索「组件化」关键词,都只会看到关于前端组件化的资料,而对于后台开发组件化的资料却很少,那这是不是 ...
- 组件化网页开发 / 步骤一 · 5-1 课程总结
组件化网页开发 / 步骤一 · 5-1 课程总结 转载于:https://www.cnblogs.com/Knowledge-is-infinite/p/11079522.html
- uniapp实现组件化列表开发
在使用uniapp开发的时候我们经常需要使用到组件化开发,这样可以减少代码的冗余,今天我来分享一下我的组件化列表开发 创建目录-MyUniapp-components-modeItem-index.v ...
- 基于python的全部开源的快速开发平台
真正的大师,永远都怀着一颗学徒的心! 一.项目简介 今天说的这个软件是一款基于python的全部开源的快速开发平台. 二.实现功能 系统管理 菜单管理 部门管理 角色管理 用户管理 常规配置 字典管理 ...
- 极致业务基础开发平台
深圳极致软件公司,面向.net开发工程师,推出极致业务基础开发平台,可以免费下载,终身免费使用.可以免费设计数据库,免费定义数据实体,设计业务流程.以及强大的工作流和协同办公功能. 不用写代码,免费开 ...
- 使用创思通信4G Cat1 DTU基于TencentOS-tiny对接腾讯云物联网开发平台
一.简介 本文档主要讲述如何使用创思通信4G Cat1 DTU开发板,基于TencentOS-tiny对接腾讯云物联网开发平台IoT Explorer,演示温度数据上报平台.平台下发控制指令控制继电器 ...
- 基于 J2objc 的跨平台组件化开发实践
本文内容已经开源,包括:j2objc 工具链,Android库移植 在移动端众多的跨平台方案中,j2objc 方案是一种比较特殊的存在.它不像 Flutter 那样几乎完全重新搞了一套语言和框架,也不 ...
最新文章
- 正确使用硬盘的方法与维护
- MySql基础入门-mysql体系结构
- 定义一个类:实现功能可以返回随机的10个数字,随机的10个字母, 随机的10个字母和数字的组合;字母和数字的范围可以指定,类似(1~100)(A~z)...
- Python3与OpenCV3.3 图像处理(九)--高斯模糊
- c语言推箱子源代码及注释,求大神 解析推箱子源代码 要详细
- 树莓派python蓝牙_怎样通过蓝牙仅使用Android手机为树莓派配置Wi-Fi网络
- 第十七届全国大学生智能汽车竞赛全国总决赛参赛队伍奖项公告
- 百兆网络变压器原理图及网络变压器功能(附PDF工程图纸)
- win10无网络安装.Net Framework3.5
- 罗技craft写java怎么样_评测| 入手罗技CRAFT无线键盘后才知道什么叫奢华
- GPU和CPU计算速度
- 打开Windows自带的画图工具
- css3 animation 实现帧动画
- TCP服务器和客户端的创建(socket/socketserver)
- 《神经科学-探索脑(第2版)》部分笔记
- WPARAM 和 LPARAM 使用
- 全加器门级(结构级),数据流,行为级实现
- 如何在复古PPT模板内插入图片
- 全志H3 linux系统recovery制作过程
- 解析第二代身份证号码