更多Dash应用开发干货知识、案例,欢迎关注“玩转Dash”微信公众号

1 简介

大家好我是费老师,随着Python生态的蓬勃发展,基于Python相关技术栈,完成网页应用桌面应用等常见形式的全栈应用开发越来越简单高效。

本文要介绍的开源Python项目magic-dash,就提供了一系列开箱即用功能完善的常用Python全栈应用项目模板,在这些项目模板中,后端计算页面内容交互功能等涉及全栈应用构建的方方面面,均基于Python实现,在这些通用应用模板基础上进行二次开发,实现各种自定义应用功能,非常的方便快捷。

下面我们就一起来学习如何基于magic-dash快速构建Python全栈应用项目:

2 magic-dash: Python全栈应用搭建神器

2.1 安装magic-dash

magic-dash的安装非常简单,终端执行下列命令,即可在当前Python环境下完成最新版本的安装(支持从3.83.13各版本的Python):

pip install magic-dash -U

查看magic-dash版本(本文写作时magic-dash最新版本为0.4.1):

2.2 magic-dash的基础使用

magic-dash的核心用法是作为命令行工具,进行不同类型内置Python应用模板项目的创建,执行下面的命令可以查看目前magic-dash中内置的全部应用项目模板

magic-dash list

以其中功能最丰富的多页面+用户登录应用模板magic-dash-pro为例,终端切换到你觉得合适的路径下,执行下列命令,按照提示,即可快速创建基于magic-dash-pro模板的新项目:

magic-dash create --name magic-dash-pro

在你熟悉的ide中将上面生成的项目目录作为项目打开后,终端执行下面的命令完成项目对应依赖的安装、数据库初始化操作(默认配置参数下使用sqlite数据库):

pip install -r requirements.txt

python -m models.init_db

完成上面的准备工作后,在项目根目录终端执行python app.py即可快速启动开发调试模式下的应用,本机浏览器访问默认发布地址http://127.0.0.1:8050即可:

使用初始化的管理员账号即可登入应用:

  • 用户名:admin
  • 密码:admin123

magic-dash-pro中自带了用户登录用户管理权限分组等必要的系统功能,可通过管理员操作界面+项目配置参数的形式,进行常见用户管理操作:

作为基于Python的全栈应用项目模板,magic-dash-pro所生成的项目,仅通过修改配置参数,即可控制大量的系统功能及设定,包括但不限于:

  • 浏览器版本自动检测
  • 用户重复登录检测
  • 全屏水印
  • 数据库类型切换(sqlite/postgresql/mysql
  • 侧边菜单宽度控制
  • 登录页左侧内容形式(图片/视频)
  • 多页面呈现形式(单页面/多标签页)
  • 用户权限组定义
  • 多页面访问权限控制
  • ... ...

且作为应用开发模板,magic-dash-pro中也自带了大量不同类型的示范子页面,目前主要有:

  • 常规静态页面
  • 带交互功能页面
  • 多级子页面
  • 独立渲染页面(硬编码地址/通配规则地址)
  • url参数提取页面

可根据不同需要,参照各示例页面进行二次开发,快速添加自己的功能页面。

且对于magic-dash-pro模板,从0.4.0版本开始,针对具有管理员权限的用户,新增了登录日志管理页面,可直接进行系统自带用户登录日志记录的查看管理导出

除了上面介绍的内置模板magic-dash-pro以外,如果你:

  • 需要不带用户登录的通用多页面应用,可以使用内置的magic-dash模板
  • 需要搭建单页面工具型小型应用,可以使用内置的simple-tool模板

magic-dash内置的各种应用模板,整体基于Python生态中顶级的开源应用开发框架Dash,在世界范围内非常流行,相关软件生态也十分丰富,日常开发中所需的各种常见页面功能,都可以找到相应的组件库直接调用,快速开发应用页面及后台逻辑,是纯Python开发各种应用的绝佳选择。

更多有关magic-dash的说明,以及各内置模板使用文档,可在magic-dash项目仓库中查看更多:


以上就是本文的全部内容,欢迎在评论区与我们进行讨论~

Python全栈应用搭建神器magic-dash 0.4新版本介绍的更多相关文章

  1. python全栈开发,Day43(引子,协程介绍,Greenlet模块,Gevent模块,Gevent之同步与异步)

    昨日内容回顾 I/O模型,面试会问道 I/O操作,不占用CPU,它内部有一个专门的处理I/O模块 print和写log属于I/O操作,它不占用CPU 线程 GIL保证一个进程中的多个线程在同一时刻只有 ...

  2. python 全栈开发,Day99(作业讲解,DRF版本,DRF分页,DRF序列化进阶)

    昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery ...

  3. 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】

    点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...

  4. python全栈学习路线

    python全栈学习路线-查询笔记 查询目录 一,硬件                                                                    十一,数据 ...

  5. 学习笔记之Python全栈开发/人工智能公开课_腾讯课堂

    Python全栈开发/人工智能公开课_腾讯课堂 https://ke.qq.com/course/190378 https://github.com/haoran119/ke.qq.com.pytho ...

  6. python 全栈之路

    目录 Python 全栈之路 一. Python 1. Python基础知识部分 2. Python -函数 3. Python - 模块 4. Python - 面对对象 5. Python - 文 ...

  7. Python全栈【Socket网络编程】

    Python全栈[socket网络编程] 本章内容: Socket 基于TCP的套接字 基于UDP的套接字 TCP粘包 SocketServer 模块(ThreadingTCPServer源码剖析) ...

  8. Python全栈【异常处理】

    Python全栈[异常处理] 本节内容: 1.异常处理 2.什么时候用异常处理 异常处理 1.异常处理: 异常就是程序运行时发生错误的信号,异常处理是在编程过程中为了增加友好性,在程序出现bug时一般 ...

  9. Python全栈开发【面向对象进阶】

    Python全栈开发[面向对象进阶] 本节内容: isinstance(obj,cls)和issubclass(sub,super) 反射 __setattr__,__delattr__,__geta ...

  10. Python全栈开发【面向对象】

    Python全栈开发[面向对象] 本节内容: 三大编程范式 面向对象设计与面向对象编程 类和对象 静态属性.类方法.静态方法 类组合 继承 多态 封装 三大编程范式 三大编程范式: 1.面向过程编程 ...

随机推荐

  1. 回顾-生成 vs 判别模型-和图

    直觉认识 生成模型, 通过训练的模型, 可以求出 p(x|y), 即生成模型的本质是通过旧样本->模型 -> 新样本, 通过某种概率分布, 能自己生成样本, 这很厉害的. 判别模型, 就咱 ...

  2. scikit-learn生成随机数据集

    %matplotlib inline from sklearn import datasets import matplotlib.pyplot as plt import numpy as np s ...

  3. 2.2.net core 工作流WorkFlow流程(流程设计)

    流程设计 WikeFlow官网:http://www.wikesoft.com WikeFlow学习版演示地址:http://workflow.wikesoft.com WikeFlow学习版源代码下 ...

  4. GLSL的预处理器都有哪些规定?

    GLSL的预处理器都有哪些规定? 下面的内容,英文版取自GLSLangSpec.4.60.pdf,中文版是我的翻译,只求意译准确易懂,不求直译严格匹配. 3.3. Preprocessor There ...

  5. Socket实战与应用

    1: Socket之序列化; 让对象能够通过socket进行传输 服务端: 1 package com.lv.study.am.first; 2 3 import java.io.ObjectOutp ...

  6. linux服务器常用硬件查询操作

    查看服务器内存条数 [root@test ~]# dmidecode |grep -P -A5 "Memory\s+Device" |grep Size |grep -v Rang ...

  7. Solon AI + MCP实战:5行代码搞定天气查询,LLM从此告别数据孤岛

    此文参考自:https://www.toutiao.com/article/7505712149642117669/ 一.痛点直击:为什么你的AI模型会"一问三不知"? 当你问 L ...

  8. 慢查询导致任务执行hang住

    上线上了大半天,原因:因为慢查询了导致跑不出来,后来同事帮忙看了下发现慢查询了,程序hang住了 select * from table where cdate = '2023-02-01' and ...

  9. 高效存储的秘诀:bitmap 数据结构在标签中的应用

    在当今大数据和信息爆炸的时代,如何有效地管理和查询海量的数据成为了企业和开发者面临的重大挑战.其中,标签系统作为数据管理中的一种重要手段,被广泛应用于用户画像.商品分类.内容推荐等多个场景.然而,随着 ...

  10. Centos7在原有磁盘上磁盘扩容

    如下示例使用VMWare虚拟化软件给虚拟centos7系统进行相关磁盘扩容 1.查看目前磁盘容量 2.VMWare给虚拟系统扩展空间 注意在虚拟系统关机情况下进行 3.查看扩容后磁盘情况 4.创建磁盘 ...