Skip to content

pear admin flask 二开教程 ​

项目介绍 ​

pear admin flask 是一个基于 flask 的后台管理系统,通过本系统可以快速构建功能业务,项目旨在为 python 开发者提供一个快速开发的模版。

项目的核心非常少

前置基础介绍 ​

在学习 pear admin layui 之前,最好是有一些 HTML、CSS、JavaScript(es5 就够了)基础,最好是对 jQuery 有一些了解。

后端部分则需要有 python 的基础。

前端部分

想要上手时比较流畅,最好是有 HTML4、CSS3(css 样式、选择器、盒子模型即可)、JavaScript(ES5)、jQuery 的基础使用。

如果想要流畅的使用,则需要对 jQuery 比较熟悉,对 ES6、DOM、BOM 有了解,对 layui 有一些了解。

注意

提前说明:本项目的前端知识与目前最流行的前端开发技术相差甚大,可以说是上个时代留下的遗产。虽说技术相对已经过时,但是 jQuery 还是被大量网站使用,包括但不限于小公司、学校、组织的官网、后台管理系统。

前端流行技术的重要节点

  • 阶段一:原生 HTML、CSS、JavaScript(es5)
  • 阶段二:jQuery 时代
  • 阶段三:HTML5、CSS3、JavaScript(es6)
  • 阶段四:MVVM 响应式框架,VUE、React 时代

本课程大概处于阶段二与阶段三之间。

jQuery 虽说已经有点过时,用于支撑公司的初始阶段项目开发还是绰绰有余,相较流行技术动不动几十上百个小时的学习时间,用来入门全栈开发也是极好。

此项目的前端部分,勤奋一点,系统学习大概四五天就可以入门了。

Python 部分

想要上手时比较流畅,最好是有系统的 Python 基础,对网络编程、并发编程有一些了解。会使用 MySQL、了解 ORM 工具。

如果想要流畅的使用,则需要对网络编程、并发编程有一定了解,熟悉网络通信模型。熟练 Python 语言的特性,掌握深浅拷贝、面向对象、装饰器等使用。

注意

关于后端,不仅是 web 框架,还有很多的东西。

  • 工具:MySQL 数据库、Git 版本控制、Redis 数据库、Linux 服务器、VIM 文本编辑器等
  • 能力:数据库建模能力、网络通信模型的了解、渲染模式的了解等
  • 技术:权鉴、缓存等

后端的东西很多、很杂,这里也不过多去了解了。

pear admin layui 介绍 ​

pear admin layui 是一个基于 layui 封装的后台管理系统的前端模版。使用的技术相对较简单,只要稍微花点时间就可以上手。 想要熟练掌握也不会需要太多的时间与精力,非常适合想要快速做出项目、或者是不想花太多时间去学习的人。

对于这个框架的学习路线建议:

  1. HTML、CSS、JavaScript 基础
  2. jQuery 的使用
  3. layui 框架
  4. pear admin layui 封装的内容

pear admin flask 介绍 ​

pear admin flask 是一个使用 flask 为核心,后端仅依赖 flask-sqlalchemy、flask-jwt-extended 两个插件, 前端部分只使用 pear admin layui 框架。如果你愿意,连前端部分都可以不要,只使用后端部分也可。

整个项目非常简约,但是功能完备。使用 jwt 用作权鉴,内部实现了 RBAC 权限管理,后台符合 restfull 规范。拥有完备的接口文档。

pear admin flask 运行教程 ​

因为历史原因,pear admin flask 同时维护着好几个版本,目前主要有 master、mini、main 三个分支。 master 分支的功能最多,mini 分支已经不再维护,main 分支目的是提供一个简约的后台管理系统模版,也是我目前主要维护的分支。

目前项目主要在 gitee 维护,但是因为 gitee 同时维护两个分支的 issues,不是很好区分。最新的 mian 分支,将在 github 维护 issues,代码将在 gitee、github 同步更新。

项目介绍 ​

master、mini、mian 虽然是同一个项目的三个分支,但是三个分支的技术选型差距较大。此教程只用到 main 分支,就不去介绍其他分支了。

main 分支项目旨在提供一个最简的后台模版系统,仅包含 flask、flask-sqlalchemy、flask-jwt-extended 三个依赖。

本地运行 ​

1、安装依赖

shell
poetry install

2、生成数据

项目内置已经定义了初始化数据库的指令。如果没做修改,可以直接运行。

shell
flask init

默认的使用 sqlite3 作为测试环境的数据库进行演示。 如果需要二次开发,建议改成 mysql,修改方式请查看 applications/configs.py 文件里面的相关配置文件,注释掉 sqlite 的配置即可。

3、运行项目

使用 flask run 就可以启动程序。

pear admin flask 启动顺序 ​

flask run 是 flask 框架内置的指令,运行之后会默认启动 app.py,如果有项目根目录下有 .flaskenv 则会使用其中的配置文件进行启动。

查阅配置文件 ​

1、查看配置文件

2、查看 app 创建过程

初始化数据 ​

flask init 之后干了啥

查看数据库模型对象

二次开发前代码梳理 ​

后端视图代码 ​

前端代码 ​

后端接口代码 ​

学员信息管理 - 二次开发 ​

新增权限 ​

新增视图 ​

编写前端代码 ​

编写后端接口 ​