这是简体中文文档
在线预览 ==> 服务器过期,暂不开放在线预览
GoBaseServer是一个基于vue和GoFrame开发的全栈前后端分离的后台管理系统,集成jwt鉴权,动态路由,动态菜单,casbin鉴权,表单生成器,代码生成器等功能,提供多种示例文件,让您把更多时间专注在业务开发上。
- node版本 > v8.6.0
- golang版本 >= v1.11
- IDE推荐:Goland
- 各位在clone项目以后,把db文件导入自己创建的库后,最好前往七牛云申请自己的空间地址。
- 替换掉项目中的七牛云公钥,私钥,仓名和默认url地址,以免发生测试文件数据错乱
# clone the project
git clone https://github.com/flipped-aurora/go_base_server.git
# enter the project directory
cd web
# install dependency
npm install
# develop
npm run serve# 使用 go.mod
# 安装go依赖包
go list (go mod tidy)
# 编译
go build- 可以翻墙
go get -u github.com/swaggo/swag/cmd/swag
- 无法翻墙 由于国内没法安装 go.org/x 包下面的东西,推荐使用 goproxy.io 或者 goproxy.cn/
# 如果您使用的 Go 版本是 1.13 及以上(推荐)
# 启用 Go Modules 功能
go env -w GO111MODULE=on
# 配置 GOPROXY 环境变量
go env -w GOPROXY=https://goproxy.io,direct
# 使用如下命令下载swag
go get -v github.com/swaggo/swag/cmd/swagcd server
gf swagger
执行上面的命令后,server目录下会出现docs文件夹,打开浏览器输入 http://localhost:8888/swaggerl,即可查看swagger文档
- 前端:用基于
vue的Element-UI构建基础页面。 - 后端:用
GoFrame快速搭建基础restful风格API,GF(Go Frame)是一款模块化、高性能、生产级的Go基础开发框架。实现了比较完善的基础设施建设以及开发工具链,提供了常用的基础开发模块,如:缓存、日志、队列、数组、集合、容器、定时器、命令行、内存锁、对象池、配置管理、资源管理、数据校验、数据编码、定时任务、数据库ORM、TCP/UDP组件、进程管理/通信等等。并提供了Web服务开发的系列核心组件,如:Router、Cookie、Session、Middleware、服务注册、模板引擎等等,支持热重启、热更新、域名绑定、TLS/HTTPS、Rewrite等特性。 - 数据库:采用
MySql(8.0.19)版本,使用gdb实现对数据库的基本操作。 - 缓存:使用
Redis实现记录当前活跃用户的jwt令牌并实现多点登录限制。 - 配置文件:使用
gcfg配置管理。 - 日志:使用
glog实现日志记录。
4.2 前端详细设计图 (提供者:baobeisuper)
- 权限管理:基于gf-jwt 和 casbin实现的权限管理
- 文件上传下载:实现基于七牛云的文件上传操作(为了方便大家测试,我公开了自己的七牛测试号的各种重要token,恳请大家不要乱传东西)
- 分页封装:前端使用mixins封装分页,分页方法调用mixins即可
- 用户管理:系统管理员分配用户角色和角色权限。
- 角色管理:创建权限控制的主要对象,可以给角色分配不同api权限和菜单权限。
- 菜单管理:实现用户动态菜单配置,实现不同角色不同菜单。
- api管理:不同用户可调用的api接口的权限不同。
- 富文本编辑器:MarkDown编辑器功能嵌入。
- 条件搜索:增加条件搜索示例。
- restful示例:可以参考用户管理模块中的示例API。
前端文件参考: src\view\superAdmin\api\api.vue
后台文件参考: model\dnModel\api.go
- 多点登录限制:需要在
config.toml中把system中的UseMultipoint修改为true - 分片长传:提供文件分片上传和大文件分片上传功能示例。
- 表单生成器:表单生成器借助 @form-generator。
- 代码生成器:后台基础逻辑以及简单curd的代码生成器。

