本项目是一个基于 Go 语言 (Gin + Gorm) 实现的后台管理系统框架 Demo,复刻了 RuoYi 的核心设计理念,提供了快速开发后台管理系统的基础脚手架。
该项目演示了如何使用 ruoyiGo SDK 快速构建后台服务。集成了 Web 服务、数据库操作、权限认证、代码生成等核心功能,并支持前后端分离架构(前端资源可嵌入二进制文件中)。
static/) 嵌入 Go 二进制文件,实现单文件部署。d:\work\sdk\ruoyiDemo ├── src/ │ ├── apiFox/ # ApiFox 接口文档生成配置 │ ├── ctl/ # 控制器层 (Controller),处理 HTTP 请求 │ │ ├── demoCtl/ # 示例模块接口 (CRUD) │ │ └── init.go # 路由初始化 │ ├── menu/ # 菜单数据初始化配置 │ ├── modelPkg/ # 数据模型定义 (Struct/Entity) │ ├── srcConstPkg/ # 业务常量定义 │ └── srcDictData/ # 字典数据初始化 ├── static/ # 前端静态资源 (构建后的 dist 目录) ├── config.yaml # 项目配置文件 ├── go.mod # Go 依赖管理 └── main.go # 项目入口文件
修改项目根目录下的 config.yaml 文件:
goAdmin:
tokenName: goAdmin # Token 名称
tokenMaxAge: 86400 # Token 有效期 (秒)
rootUser: admin # 默认管理员账号
rootPassword: 123456 # 默认管理员密码
sqlType: sqlite # 数据库类型: sqlite 或 mysql
system:
mode: debug # 运行模式: debug, release, test
address: 0.0.0.0:9004 # 服务监听地址
mysql: # 如果使用 MySQL,请配置此处
driver: mysql
host: mysql.localhost:3306
username: root
password: your_password
dbname: db_ruoyiGo
sqlLite: # SQLite 配置
path: './test.db' # 数据库文件路径
⚠️ 注意:
main.go和config.yaml中可能包含开发者的本地硬编码路径 (如D:\work1\...),请在运行前根据您的环境进行修改或注释掉相关代码生成逻辑。
# 下载依赖
go mod tidy
# 运行
go run main.go
启动成功后,访问: http://localhost:9004
admin123456参考 src/modelPkg/readme.md 的说明,标准开发流程如下:
src/modelPkg/ 下创建新的结构体文件 (如 TbDemo.go)。src/srcDictData/ 下添加常量和初始化逻辑。src/menu/ 下定义菜单结构和权限。src/ctl/ 下创建对应的控制器目录,实现 CRUD 逻辑。src/apiFox/ 下配置接口文档分类。项目在启动时 (main.go) 会触发代码生成逻辑 (生成 TS 类型、ApiFox 文档等)。相关的生成路径配置在 main.go 的 spingGo.AddLifeListener 回调中,请确保路径配置正确。
项目集成了 ApiFox 文档生成结构,相关的接口定义位于 src/apiFox/ 目录下。
[License 信息]