From fabe7a09bfea81ce6c01cc42737a0897f9d0be81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=88=91=E5=8F=AB=E4=BB=A5=E8=B5=8F?= Date: Wed, 26 Jun 2024 02:23:38 +0000 Subject: [PATCH 1/2] =?UTF-8?q?doc:=20=E6=9B=B4=E6=96=B0=20README=20?= =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 我叫以赏 --- README.md | 155 ++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 103 insertions(+), 52 deletions(-) diff --git a/README.md b/README.md index 8dc9886..2a65f1b 100644 --- a/README.md +++ b/README.md @@ -27,13 +27,14 @@ -#### 项目简介 +# 项目简介 Pear Admin Flask 基于 Flask 的后台管理系统,拥抱应用广泛的python语言,通过使用本系统,即可快速构建你的功能业务 项目旨在为 python 开发者提供一个后台管理系统的模板,可以快速构建信息管理系统。 -项目使用flask-sqlalchemy + 权限验证 + marshmallow 序列化与数据验证 -#### 内置功能 +项目使用 flask-sqlalchemy + 权限验证 + marshmallow 序列化与数据验证,以此方式集成了若干不同的功能。 + +# 内置功能 - [x] 用户管理:用户是系统操作者,该功能主要完成系统用户配置。 - [x] 权限管理:配置系统菜单,操作权限,按钮权限标识等。 @@ -43,17 +44,33 @@ Pear Admin Flask 基于 Flask 的后台管理系统,拥抱应用广泛的pytho - [x] 服务监控:监视当前系统CPU、内存、磁盘、python版本,运行时长等相关信息。 - [x] 文件上传: 图片上传示例 +# 项目分支说明 + +> **⚠️注意** Pear Admin Flask 不仅仅只提供一种对于 Pear Admin 后端的实现方式,所以提供了不同的分支版本,不同分支版本各有其优劣,并且由不同的开发者维护。 + +| 分支名称 | 特点 | +|------------------------------------------------------------------|------------------------| +| master(您目前浏览的分支版本) | 功能齐全,处于开发阶段,代码量较大。 | +| [main](https://gitee.com/pear-admin/pear-admin-flask/tree/main/) | 功能精简,代码量小,处于开发阶段,易于维护。 | +| [mini](https://gitee.com/pear-admin/pear-admin-flask/tree/mini/) | 不再更新,是最初版本的镜像。 | + + +> **⚠️注意** 由于 master 分支项目需要,暂时移除了 Flask-APScheduler 定时任务 功能。 -#### 项目结构 +# 版本支持情况 + +经过测试,此项目的(master分支)运行要求是 `>= Python 3.8` ,推荐使用 `Python 3.9`。 + +> **💡提示** 由于 Flask 中使用的 Werkzeug 模块更新,Flask 官方并未进行更新,所以可能会出现 ImportError 。 +> 此类情况的出现可以通过正确安装 `requirements.txt` 中的模块(以及其对应版本)解决。 + +# 项目结构 ## 应用结构 ```应用结构 Pear Admin Flask ├─applications # 应用 -│ ├─configs # 配置文件 -│ │ ├─ common.py # 普通配置 -│ │ └─ config.py # 配置文件对象 │ ├─extensions # 注册插件 │ ├─models # 数据模型 │ ├─static # 静态资源文件 @@ -92,95 +109,115 @@ Pear Admin Flask └─index # 主页模板 ``` -#### 项目安装 +# 项目安装 + +## 从仓库获取 ```bash -# 下 载 +# 克隆仓库 / 手动下载 git clone https://gitee.com/pear-admin/pear-admin-flask +cd pear-admin-flask # 进入到项目目录 ``` -#### 修改配置 +## 修改配置 + +> **💡提示** 配置文件位于 `applications/config.py` ,打开配置文件看到的是位于 `BaseConfig` 类下的默认配置文件,您可以编写自己的配置类并继承 `BaseConfig` 类。 +项目启动时,会调用 `applications/__init__.py` ,这个文件中加载了程序的配置,所以在您编写了自己的类后不要忘记在文件 `applications/__init__.py` 中修改使用的配置类。 + +> **⚠️注意** 配置文件中对于数据库的配置有所更改,请查看代码中的注释修改配置。 ```python -# MySql配置信息 -MYSQL_HOST=127.0.0.1 -MYSQL_PORT=3306 -MYSQL_DATABASE=PearAdminFlask -MYSQL_USERNAME=root -MYSQL_PASSWORD=root - -# 密钥配置 -SECRET_KEY='一定要修改!!!' - -# 邮箱配置 -MAIL_SERVER='smtp.qq.com' -MAIL_USERNAME='123@qq.com' -MAIL_PASSWORD='XXXXX' # 生成的授权码 +# 部分配置信息如下所示 + +# 验证密钥(⚠️ 一定要记得修改 ⚠️) +SECRET_KEY = "pear-system-flask" + +# 数据库的配置信息 +SQLALCHEMY_DATABASE_URI = 'sqlite:///../pear.db' + +# 默认日志等级 +LOG_LEVEL = logging.WARN + +# flask-mail配置 +MAIL_SERVER = 'smtp.qq.com' +MAIL_USE_TLS = False +MAIL_USE_SSL = True +MAIL_PORT = 465 +MAIL_USERNAME = '123@qq.com' +MAIL_PASSWORD = 'XXXXX' # 生成的授权码 +MAIL_DEFAULT_SENDER = MAIL_USERNAME ``` -#### Venv 安装 + +## 虚拟环境安装项目(推荐) + +> **💡提示** 为了保证项目所依赖的库不影响其他部署在同一主机上的项目,我们推荐使用虚拟环境安装。 ```bash python -m venv venv # 进入虚拟环境下 +venv\Scripts\activate.bat # Windows 提示命令符 +venv\Scripts\Activate.ps1 # Windows Powershell +. venv/bin/activate # Linux + +# 使用 pip 安装 +pip install -r requirements.txt +``` + +## 直接安装项目 + +```bash +# 使用 pip 安装 pip install -r requirements.txt +# 同时你可以选择以模块的方式调用 pip +python -m pip install -r requirements.txt ``` -#### 运行项目 +# 运行项目 + ++ 一般情况运行项目 ```bash -# 初 始 化 数 据 库 +# 初始化数据库 flask db init flask db migrate flask db upgrade flask admin init -# windows改为bat -./run.sh -``` - - +# 运行项目 +flask --app app.py run -h 0.0.0.0 -p 8000 --debug +# 或者直接调用 app.py +python app.py +``` -#### 使用docker-compose运行项目 ++ 使用 docker-compose 运行项目 ```bash git clone https://gitee.com/pear-admin/pear-admin-flask -#安装docker-compose +# 安装 docker-compose curl -L https://github.com/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose -#运行如下命令,有输入版本,表示docker-compose 可以用了 +# 运行如下命令,有输出版本,表示 docker-compose 可以用了 docker-compose --version -#在当前目录执行如下命令即可以运行app +# 在当前目录执行如下命令即可以运行 app docker-compose -f dockercompose.yaml up -#看到如下表示运行成功,由于pip下载慢,需要一些时间,请耐心等待;如果安装失败,重新执行上面的命令即可。 +# 看到如下表示运行成功,由于 pip 下载慢,需要一些时间,请耐心等待;如果安装失败,重新执行上面的命令即可。 -#运行后在浏览器访问127.0.0.1:5000 +# 运行后在浏览器访问 127.0.0.1:5000 #如果要停止容器运行,在当前文件夹执行如下命令: -docker-compose -f dockercompose.yaml dwon - - +docker-compose -f dockercompose.yaml down ``` -#### Pear Admin Flask 还有以下版本: - - - -**[mini 分支版本](https://gitee.com/pear-admin/pear-admin-flask/tree/mini/)** -不再更新 - -**[main 分支版本](https://gitee.com/pear-admin/pear-admin-flask/tree/main/)** -main 分支是对 mini 分支的后续,目前还在开发中。 - -#### 预览项目 +# 预览项目 | | | | ---------------------- | ---------------------- | @@ -189,3 +226,17 @@ main 分支是对 mini 分支的后续,目前还在开发中。 | ![](docs/assets/5.jpg) | ![](docs/assets/6.jpg) | +# 其他说明 + +## 项目初始用户以及其密码 + +默认用户为 `admin` ,密码默认为 `123456` 。 + +## 其他开发说明链接 + ++ Pear Admin Flask [目录结构](list.md) 章节 ++ Pear Admin Flask [开发函数](function.md) 章节 ++ Pear Admin Flask [插件开发](plugin.md) 章节 + + + -- Gitee From 1cadad507692919d0b66e1b67ee43e03fa383d93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=88=91=E5=8F=AB=E4=BB=A5=E8=B5=8F?= Date: Wed, 26 Jun 2024 02:25:12 +0000 Subject: [PATCH 2/2] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=9C=80=E8=A6=81?= =?UTF-8?q?=E5=BF=BD=E7=95=A5=E7=9A=84=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 我叫以赏 --- .gitignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 3e90094..9bb966f 100644 --- a/.gitignore +++ b/.gitignore @@ -124,4 +124,7 @@ migrations/ *.db # 文件上传 -static/upload/ \ No newline at end of file +static/upload/ + +# flask session +flask_session/ \ No newline at end of file -- Gitee