888 字
4 分钟
GManager - 基于 GoFrame V2 的后台管理系统

项目简介#

GManager 是一个基于 GoFrame V2 框架开发的后台管理系统。后端采用 Go 语言结合 GoFrame 框架,前端基于 Vue3 + Vite + TypeScript + Element-Plus 构建,是一个完整的前后端分离的管理平台解决方案。

核心特性#

  • 后端框架: GoFrame V2
  • 前端技术栈: Vue3 + Vite + TypeScript + Element-Plus
  • 认证方式: 使用 gtoken 支持集群部署
  • 数据库: MySQL

功能模块#

1. 部门管理#

配置系统组织机构信息,支持多层级部门结构管理。

2. 用户管理#

  • 用户添加与配置
  • 用户权限分配
  • 帐号状态管理

3. 角色管理#

  • 角色菜单权限分配
  • 支持菜单权限和按钮权限设置
  • 灵活的角色权限配置

4. 菜单管理#

  • 配置系统菜单
  • 按钮权限管理
  • 动态菜单加载

5. 配置管理#

  • 系统参数动态配置
  • 数据字典配置
  • 运行时配置更新

6. 日志管理#

  • 登录日志记录
  • 登出日志记录
  • 业务增删改操作记录
  • 操作审计追踪

7. 其他功能#

  • 用户登录/认证/登出
  • 访问统计
  • 权限验证

快速开始#

环境要求#

  • Go 1.18+
  • Node.js 20+
  • pnpm 9+
  • MySQL 5.7+
  • Hugo (可选,用于文档)

后端部署#

1. 克隆项目#

Terminal window
git clone https://github.com/goflyfox/gmanager
cd gmanager

2. 数据库配置#

安装 MySQL 数据库并运行初始化脚本:

Terminal window
# 运行 SQL 脚本
mysql -u root -p < resource/sql/gmanager.sql

3. 配置文件#

复制配置文件并修改数据库连接:

Terminal window
cd server
cp manifest/config/config.example.yaml manifest/config/config.yaml

编辑 config.yaml,修改数据库配置:

# 数据库配置
database:
default:
link: "mysql:root:123456@tcp(127.0.0.1:3306)/gmanager"

4. 启动后端服务#

Terminal window
cd server
go mod tidy
go run main.go

访问 http://localhost:8000/ping 验证后端服务,返回 pong 表示部署成功。

前端部署#

1. 安装依赖#

Terminal window
cd web
pnpm install

2. 启动开发服务器#

Terminal window
pnpm run dev

3. 访问系统#

浏览器访问 http://localhost:3000,使用默认账号登录:

  • 账号: admin
  • 密码: 123456

项目结构#

gmanager/
├── server/ # 后端 Go 代码
│ ├── manifest/
│ │ └── config/ # 配置文件
│ ├── api/ # API 接口
│ ├── logic/ # 业务逻辑
│ └── model/ # 数据模型
├── web/ # 前端 Vue3 代码
│ ├── src/
│ │ ├── api/ # API 调用
│ │ ├── components/ # 组件
│ │ ├── views/ # 页面
│ │ └── utils/ # 工具函数
└── resource/
└── sql/ # 数据库脚本

技术亮点#

1. GoFrame V2 框架#

GoFrame 是一款模块化、高性能的 Go 语言开发框架,提供了丰富的基础组件和工具函数,大大提升了开发效率。

2. gtoken 认证#

使用 gtoken 实现用户认证,支持集群部署,解决了分布式环境下的会话共享问题。

3. 前后端分离#

  • 后端: 提供 RESTful API 接口
  • 前端: Vue3 + TypeScript 构建响应式界面
  • 通信: Axios 进行 HTTP 通信

4. 权限管理#

  • RBAC(基于角色的访问控制)模型
  • 菜单权限和按钮权限双重控制
  • 动态权限加载

演示地址#

项目地址#

开源协议#

本项目采用 Apache License 2.0 开源协议。

总结#

GManager 是一个功能完善的后台管理系统,适合学习和实际项目使用。项目代码结构清晰,注释完善,非常适合学习 GoFrame 框架和 Vue3 开发。如果你正在寻找一个后台管理系统的起点,或者想学习 Go 语言全栈开发,GManager 是一个不错的选择。

参考资源#

GManager - 基于 GoFrame V2 的后台管理系统
https://www.jflyfox.com/posts/gmanager/
作者
FLY的狐狸
发布于
2025-08-13
许可协议
CC BY-NC-SA 4.0