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 之后干了啥

查看数据库模型对象

二次开发前代码梳理

后端视图代码

前端代码

后端接口代码

学员信息管理-二次开发

新增权限

新增视图

编写前端代码

编写后端接口