RuoYi-Vue3-FastAPI框架的功能實現(上)
感謝大佬給出關于python后端的若依框架,希望這個簡單文檔能幫助到大家。
安裝與運行:
下載地址:Vue2版本:
- Gitte倉庫地址:RuoYi-Vue-FastAPI: 基于Vue2+Element UI+FastAPI開發的一個通用中后臺管理框架(若依的FastAPI版本),支持代碼生成
開發
# 克隆項目
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表單的文件路徑,路由地址解釋文件倒數二層,權限可以做參考,有多個權限,可以直接在這里配置,或者用戶哪里配置。
結果展示:
?修改添加導出新增功能都正常。