Go-Admin 是一个基于 Gin + Vue + Element UI & Arco Design & Ant Design 的前后端分离权限管理系统脚手架。它包含了多租户支持、基础用户管理功能、JWT 鉴权、代码生成器、RBAC 资源控制、表单构建、定时任务等功能。该项目的主要编程语言是 Go 和 JavaScript。
ps:我这里是windows环境
前后端技术栈:
后端: 使用 Go 语言的 Gin 框架进行快速Web应用开发。
前端: 结合 Vue.js 和 Element UI 提供友好的用户体验界面。
数据库: 支持 MySQL,用于存储系统数据。
缓存: 可配置 Redis 进行高速数据访问。
API 文档: 利用 Swagger 2.0 自动生成RESTful API文档。
身份验证: JWT 用于安全的用户认证。
开发环境准备:
Go 1.13.3 或更高版本。
MySQL 8 或更高版本。
Redis 3.0 或更高版本。
Node.js v16.x 或以上,npm 作为其包管理器。
快速开始:
源码下载下来:
通过网盘分享的文件:go
链接: https://pan.baidu.com/s/1zsgARsqcqlE6iUb8T8MTfg 提取码: 62v8
启动后端项目goadmin
创建文件夹:
goadmin
把项目拷贝到目录下面:
使用vscode导入项目:
更新整理依赖
vscode终端里面输入:
go mod tidy
编译项目
vscode终端里面输入:
go build
修改配置:
这里可以使用默认的配置config/settings.yml,也可以新建一个配置文件config/settings.dev.yml把settings.yml内容拷贝到里面,启动的时候指定配置文件就行。
修改一下mysql数据库链接:
database: # 数据库类型 mysql,sqlite3, postgres driver: mysql # 数据库连接字符串 mysql 缺省信息 charset=utf8&parseTime=True&loc=Local&timeout=1000ms source: user:password@tcp(127.0.0.1:3306)/dbname?charset=utf8&parseTime=True&loc=Local&timeout=1000ms
初始化数据库
这里非常容易出错!window下初始化数据库容易出现问题!
官方文档里面 windows里面使用这个命令:
go-admin.exe server -c config/settings.yml
我用cmd命令里面使用这个命令初始化就失败了!只生成了一个sys_casbin_rule,其他表初始化失败!
然后我在vscode终端里面输入:
go run main.go migrate -c config\settings.yml
如果需要启动不同的配置文件把settings.yml替换了就行了,
初始化使用的哪个配置文件,后面启动命令也得使用同样的配置文件。
go run main.go migrate -c config\settings.dev.yml
或者
go run main.go migrate -c config\settings.test.yml
初始化成功:
启动
直接使用go run main.go方式进行启动,vscode终端里面输入:
go run main.go server -c config/settings.yml
访问一下swagger地址:
http://localhost:8000/swagger/admin/index.html#/
启动前端项目go-admin-ui
# 安装依赖
npm install
# 建议不要直接使用 cnpm 安装依赖,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npm.taobao.org
# 启动服务
npm run dev