网站首页 > 技术文章 正文
目录
1,关于go-admin
2,使用go-admin进行构建
3,使用go-admin进行数据库,后端初始化
4,下载前端代码,进行node编译
5,总结
1,关于go-admin
github地址:
https://github.com/go-admin-team/go-admin
国内:
https://gitee.com/go-admin-team/go-admin
一个非常不错的开源项目,完成度非常的高,基础的权限角色,组织机构都有了。
可以直接开发自己的业务模块,相关的代码了,减少了很多基础功能开发投入,节省了大量时间。非常不错。
基于Gin + Vue + Element UI OR Arco Design OR Ant Design的前后端分离权限管理系统,系统初始化极度简单,只需要配置文件中,修改数据库连接,系统支持多指令操作,迁移指令可以让初始化数据库信息变得更简单,服务指令可以很简单的启动api服务。
多租户:系统默认支持多租户,按库分离,一个库一个租户。
用户管理:用户是系统操作者,该功能主要完成系统用户配置。
部门管理:配置系统组织机构(公司、部门、小组),数据结构展现支持数据权限。
岗位管理:配置系统用户所属担任职务。
菜单管理:配置系统菜单,操作权限,按钮权限标识,接口权限等。
角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
字典管理:对系统中经常使用的一些较为固定的数据进行维护。
参数管理:对系统动态配置常用参数。
操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
登录日志:系统登录日志记录查询包含登录异常。
接口文档:根据业务代码自动生成相关的api接口文档。
代码生成:根据数据表结构生成对应的增删改查相对应业务,全程可视化操作,让基本业务可以零代码实现。
表单构建:自定义页面样式,拖拉拽实现页面布局。
服务监控:查看一些服务器的基本信息。
内容管理:demo功能,下设分类管理、内容管理。可以参考使用方便快速入门。
定时任务:自动化任务,目前支持接口调用和函数调用。
2,使用go-admin进行构建
# https://goproxy.io/zh/ # 配置 GOPROXY 环境变量 export GOPROXY=https://proxy.golang.com.cn,direct # 配置好 golang 代理执行: # 最近 github 代码下载总是慢 git clone https://gitee.com/go-admin-team/go-admin.git # 下载相关依赖 export GO111MODULE=on go mod tidy
3,使用go-admin进行数据库,后端初始化
数据库使用 mysql 数据库,使用docker mysql 进行构建:
mysql:5.7 使用docker 启动,设置root密码是mysql
docker run --name mysqldb -v ${PWD}/data/mysqldb/data:/var/lib/mysql --restart=always \ -e MYSQL_ROOT_PASSWORD=mysql -e MYSQL_DATABASE=go_admin -e TZ=Asia/Shanghai \ -p 3306:3306 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci # 要是已经有了数据库,直接创建一个go_admin的数据库: CREATE DATABASE IF NOT EXISTS `go_admin` CHARACTER SET utf8 COLLATE utf8_general_ci;
然后修改 config/settings.yml 数据库的配置文件:
... driver: mysql # 数据库连接字符串 mysql 缺省信息 charset=utf8&parseTime=True&loc=Local&timeout=1000ms source: root:mysql@tcp(127.0.0.1:3306)/go_admin?charset=utf8&parseTime=True&loc=Local&timeout=1000ms # databases:
进行数据库初始化:
go run main.go migrate -c config/settings.yml ... 2022-11-21 23:00:32.789+0800 trace /home/test/newDisk1/go/src/go-admin/cmd/migrate/migration/version/1653638869132_migrate.go:44 [0.322ms] [rows:1] INSERT INTO `sys_migration` (`version`,`apply_time`) VALUES ('1653638869132','2022-11-21 23:00:32.79') 数据库基础数据初始化成功 2022/11/21 23:00:32 !!! config init
项目启动,端口8000
go run main.go server -c config/settings.yml
后端接口swagger 地址:
http://localhost:8000/swagger/admin/index.html#/
4,下载前端代码,进行node编译
首先要自己折腾个 node 环境,或者使用 node:14 镜像也可以。
配置 源,加速编译 # npm 源 npm config set registry https://registry.npm.taobao.org --global npm config set disturl https://npm.taobao.org/dist --global # yarn 源 yarn config set registry https://registry.npm.taobao.org --global yarn config set disturl https://npm.taobao.org/dist --global
git clone https://gitee.com/go-admin-team/go-admin-ui.git cd go-admin-ui yarn install # 启动开发环境: yarn run dev 端口: - Local: http://localhost:9527/
数据初始化成功之后就可以看到后端管理界面了:
4,总结
Element UI vue体验:https://vue2.go-admin.dev
账号 / 密码: admin / 123456
非常强大的golang 管理系统,使用gin进行项目开发,同时完成了基本的权限,角色,日志管理等非常多的功能。还集成了swagger 接口开发。
非常容易使用,源代码已经开放了,直接可以用来做个内部系统然后再进行二次开发了。
很快就可以发布上线了,领导非常喜欢。
猜你喜欢
- 2024-12-30 Ollama教程:本地LLM管理、WebUI对话、Python/Java客户端API应用
- 2024-12-30 Go 项目推荐之 go-admin go的项目
- 2024-12-30 nodejs多版本管理工具 nodejs 版本
- 2024-12-30 npm提示 sill idealTree buildDeps(安装element-ui组件库)
- 2024-12-30 CentOS+Nexus搭建npm私有仓库并推送代码
- 2024-12-30 内网npm私有仓库搭建以及使用教程
- 2024-12-30 TS,TypeScript,Windows环境下构建环境,安装、编译且运行
- 2024-12-30 如何提高npm 下载依赖过慢的问题 npm下载包
- 2024-12-30 使用 Verdaccio 搭建npm私有仓库 搭建自己的npm
- 2024-12-30 开发自己的nodejs命令行工具并使用工具
- 02-21走进git时代, 你该怎么玩?_gits
- 02-21GitHub是什么?它可不仅仅是云中的Git版本控制器
- 02-21Git常用操作总结_git基本用法
- 02-21为什么互联网巨头使用Git而放弃SVN?(含核心命令与原理)
- 02-21Git 高级用法,喜欢就拿去用_git基本用法
- 02-21Git常用命令和Git团队使用规范指南
- 02-21总结几个常用的Git命令的使用方法
- 02-21Git工作原理和常用指令_git原理详解
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)