快速启动Go-Admin(Gin + Vue3 + Element UI)脚手架管理系统

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
相关推荐
古夕14 小时前
第三方 SSO 接入实践:redirect_uri 编码、回调一致性与跨项目联调
前端·vue.js
Ruihong14 小时前
Vue withDefaults 转 React:VuReact 怎么处理?
vue.js·react.js·面试
稀土熊猫君16 小时前
一个人能做出什么开源项目?
vue.js·后端·开源
DarkLONGLOVE2 天前
快速上手 Pinia!Vue3 极简状态管理使用教程
javascript·vue.js
宸翰2 天前
解决 uni-app App 端 vue-i18n 占位符丢失:封装跨端可用的 tf 格式化方法
前端·vue.js·uni-app
用户2136610035722 天前
VueRouter进阶-动态路由与嵌套路由
前端·vue.js
暴走的小呆3 天前
Vue 2 中 Object 的变化侦测:从 getter/setter 到 Dep、Watcher、Observer
vue.js
英勇无比的消炎药3 天前
TinyVue v-auto-tip: 文本超长自动提示的优雅方案
vue.js
时光足迹3 天前
腾讯云 TRTC UniApp SDK 从入门到上线
前端·vue.js·uni-app
时光足迹3 天前
uni-app 里把加密视频嵌入页面播放?我分析了 4 种方案,只有 1 种接近完美
前端·vue.js·uni-app