RuoYi-Vue3-FastAPI框架的功能实现(上)
感谢大佬给出关于python后端的若依框架,希望这个简单文档能帮助到大家。
安装与运行:
下载地址:Vue2版本:
开发
# 克隆项目
git clone https://gitee.com/insistence2022/RuoYi-Vue3-FastAPI.git
# 进入项目根目录
cd RuoYi-Vue3-FastAPI
前端
# 进入前端目录
cd ruoyi-fastapi-frontend
# 安装依赖
npm install 或 yarn --registry=https://registry.npmmirror.com
# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npmmirror.com
# 启动服务
npm run dev 或 yarn dev
后端
# 进入后端目录
cd ruoyi-fastapi-backend
# 如果使用的是MySQL数据库,请执行以下命令安装项目依赖环境
pip3 install -r requirements.txt
# 如果使用的是PostgreSQL数据库,请执行以下命令安装项目依赖环境
pip3 install -r requirements-pg.txt
# 配置环境
在.env.dev文件中配置开发环境的数据库和redis
# 运行sql文件
1.新建数据库ruoyi-fastapi(默认,可修改)
2.如果使用的是MySQL数据库,使用命令或数据库连接工具运行sql文件夹下的ruoyi-fastapi.sql;如果使用的是PostgreSQL数据库,使用命令或数据库连接工具运行sql文件夹下的ruoyi-fastapi-pg.sql
# 运行后端
python3 app.py --env=dev
访问
# 默认账号密码
账号:admin
密码:admin123
# 浏览器访问
地址:http://localhost:80
发布
前端
# 构建测试环境
npm run build:stage 或 yarn build:stage
# 构建生产环境
npm run build:prod 或 yarn build:prod
后端
# 配置环境
在.env.prod文件中配置生产环境的数据库和redis
# 运行后端
python3 app.py --env=prod
页面展示
功能一:表单生成与构建
代码生成功能
数据库
首先根据自己的需求在数据库建立一个数据表,这个表要把主键标注好,如果需要更新数据的功能,需要加上两个字段:update_by(varchar(255))、update_time(datetime),代码生成时会默认利用这两个字段做更新时间,如果不用,就把生成文件中的controller.py
edit_lingdao.update_by = current_user.user.user_name edit_lingdao.update_time = datetime.now()
注释掉。
这里也有问题datetime,这个我们需要进行额外的引用
from datetime import datetime
------------------------------------------------------------------------------------------------------------------------------
建立样式如图所示:
完成数据库建立!
代码生成
进入若依代码生成界面:
然后对里面内容进行一些修改。画红圈的地方因为后续字段展示会用,所有根据自己的需要进行展示。
基本信息根据自己的需要来填,不影响。
点击提交后,就可以把代码下载下来了。
提取的文件分为前端和后端,都是得单独复制粘贴。
在后端文件backend中有sql菜单文件,如果直接运行,他会直接帮创建一个菜单,可以直接使用,后续在前端再修改。
后端
在后端这一块,我们需要把代码直接复制粘贴进文件夹中。
添加后端文件路由。
编辑外部server.py文件
引入D:\project\RuoYi-Vue3-FastAPI-master\ruoyi-fastapi-backend\module_xinxi\lingdao1\controller\lingdao_controller.py
中的接口。lingdaoController。
lingdaoController = APIRouter(prefix='/lingdao1/lingdao', dependencies=[Depends(LoginService.get_current_user)])s
在server.py中添加
from module_xinxi.lingdao1.controller.lingdao_controller import lingdaoControllery
引入接口文件接口后,添加路由,拉到最下面,信息2是后面我要放的主目录名称。如果是系统工具就要选系统工具。
完成后重启后端服务。
前端
进入前端文件,直接复制api和views文件,然后直接复制粘贴到src文件夹下面即可。
编辑菜单管理
进入若依界面,进入菜单管理,找到之前sql创建好的菜单。如果没跑sql,那自己创建也可以,可以参考其他菜单进行创建。这里默认生成在工具这里了。点击信息2的修改,给他改一下路径和名字即可。
因为我们之前生成代码的时候是放了两次目录,所有这里我们需要做一个目录来容纳这个菜单,如果想放在其他目录,就需要进前前端修改url链接。
这里我们新建一个菜单叫信息3.
在把直接默认生成的表单放到信息3下面,菜单名称一定要和之前在后端设置的路由一样,之前我设置的是信息2,这里就要填信息2,其他可以参考一下,路径解释vue表单的文件路径,路由地址解释文件倒数二层,权限可以做参考,有多个权限,可以直接在这里配置,或者用户哪里配置。
结果展示:
修改添加导出新增功能都正常。