更新记录

v2.3.8(2020-11-28)

2020/11/28版本 (测试版,非稳定)

1 增加工作流简单实现(后续会完整交接 时间节点 脚本节点 邮件节点等功能) 2 优化了基础库一些错误处理 3 前端发布优化,使用cdn打包 4 手机端UI进行简单适配 5 GORM日志输出支持zap 6 解决了一些已知的bug

v2.3.3.2(2020-10-18)

1.紧急修复业务漏洞,注册页面取消,注册接口迁移到user下,增加鉴权。

2.修复读取配置文件未初始化的逻辑错误

3.修改日志body为longtext

4.修复了一些以知的细节bug

查看更多

平台兼容性

English | 简体中文

项目文档

在线文档 : https://www.gin-vue-admin.com/

开发教学 (贡献者: LLemonGreen And Fann)

1. 基本介绍

1.1 项目介绍

测试用户名:admin

测试密码:123456

Gin-vue-admin是一个基于vue和gin开发的全栈前后端分离的后台管理系统,集成jwt鉴权,动态路由,动态菜单,casbin鉴权,表单生成器,代码生成器等功能,提供多种示例文件,让您把更多时间专注在业务开发上。

1.2 贡献指南

Hi! 首先感谢你使用 gin-vue-admin。

Gin-vue-admin 是一套为后台管理平台准备的一整套前后端分离架构式的开源框架,旨在快速搭建后台管理系统。

Gin-vue-admin 的成长离不开大家的支持,如果你愿意为 gin-vue-admin 贡献代码或提供建议,请阅读以下内容。

1.2.1 Issue 规范

  • issue 仅用于提交 Bug 或 Feature 以及设计相关的内容,其它内容可能会被直接关闭。如果你在使用时产生了疑问,请到 Slack 或 Gitter 里咨询。

  • 在提交 issue 之前,请搜索相关内容是否已被提出。

1.2.2 Pull Request 规范

[文件名]: 描述信息README.md: fix xxx bugdevelopmaster

1.3 版本列表

2. 使用说明

- node版本 > v8.6.0
- golang版本 >= v1.14
- IDE推荐:Goland
- gormv2版本初始化数据库可以利用批量创建功能,这里已经写好初始化代码,需要在main.go内打开 initialize.Data() 的注释即可
- 替换掉项目中的七牛云公钥,私钥,仓名和默认url地址,以免发生测试文件数据错乱
# 在Linux安装
# 1.1 运行此命令以下载Docker Compose的当前稳定版本
sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 1.2 将可执行权限应用于二进制文件
sudo chmod +x /usr/local/bin/docker-compose 
# 使用Python的pip安装 
pip3 install docker-compose -i https://pypi.tuna.tsinghua.edu.cn/simple
git clone https://github.com/flipped-aurora/gin-vue-admin.git
# 使用docker-compose启动四个容器
docker-compose up
# 如果您修改了某些配置选项,可以使用此命令重新打包镜像
docker-compose up --build
# 使用docker-compose 后台启动
docker-compose up -d
networks:
  network:
    ipam:
      driver: default
      config:
        - subnet: '177.7.0.0/16' 

使用docker-compose进行部署本项目需注意的问题

2.1 web端

# clone the project
git clone https://github.com/piexlmax/gin-vue-admin.git

# enter the project directory
cd web

# install dependency
npm install

# develop
npm run serve

2.2 server端

# 使用 go.mod

# 安装go依赖包
go list (go mod tidy)

# 编译
go build

Zap日志库使用指南&&配置指南

Zap日志库的配置选择在config.yaml下的zap

# zap logger configuration
zap:
  level: 'debug'
  format: 'console'
  prefix: '[GIN-VUE-ADMIN]'
  director: 'log'
  link_name: 'latest_log'
  show_line: true
  encode_level: 'LowercaseColorLevelEncoder'
  stacktrace_key: 'stacktrace'
  log_in_console: true
配置名 配置的类型 说明
level string level的模式的详细说明,请看zap官方文档
info: info模式,无错误的堆栈信息,只输出信息
debug:debug模式,有错误的堆栈详细信息
warn:warn模式
error: error模式,有错误的堆栈详细信息
dpanic: dpanic模式
panic: panic模式
fatal: fatal模式
format string console: 控制台形式输出日志
json: json格式输出日志
prefix string 日志的前缀
director string 存放日志的文件夹,修改即可,不需要手动创建
link_name string 在server目录下会生成一个link_name的软连接文件,链接的是director配置项的最新日志文件
show_line bool 显示行号, 默认为true,不建议修改
encode_level string LowercaseLevelEncoder:小写
LowercaseColorLevelEncoder:小写带颜色
CapitalLevelEncoder: 大写
CapitalColorLevelEncoder: 大写带颜色
stacktrace_key string 堆栈的名称,即在json格式输出日志时的josn的key
log_in_console bool 是否输出到控制台,默认为true
level:debugformat:consoleencode_level:LowercaseColorLevelEncoderencode_leve:CapitalColorLevelEncoderlevel:errorformat:jsonencode_level: LowercaseLevelEncoderencode_level:CapitalLevelEncoderlog_in_console: false

2.3 swagger自动化API文档

2.3.1 安装 swagger

(1)可以翻墙
go get -u github.com/swaggo/swag/cmd/swag
(2)无法翻墙

由于国内没法安装 go.org/x 包下面的东西,推荐使用 goproxy.io

如果您使用的 Go 版本是 1.13 及以上(推荐)
# 启用 Go Modules 功能
go env -w GO111MODULE=on 
# 配置 GOPROXY 环境变量
go env -w GOPROXY=https://goproxy.io,direct

# 使用如下命令下载swag
go get -u github.com/swaggo/swag/cmd/swag

2.3.2 生成API文档

cd server
swag init

执行上面的命令后,server目录下会出现docs文件夹,登录http://localhost:8888/swagger/index.html,即可查看swagger文档

3. 技术选型

vueElement-UIGinGinMySqlgormRedisjwtSwaggerfsnotifyviperyamlgo-logging

4. 项目架构

4.1 系统架构图

4.2 前端详细设计图 (提供者:baobeisuper)

4.3 目录结构

    ├─server         (后端文件夹)
    │  ├─api            (API)
    │  ├─config         (配置包)
    │  ├─core           (內核)
    │  ├─docs           (swagger文档目录)
    │  ├─global         (全局对象)
    │  ├─initialiaze    (初始化)
    │  ├─middleware     (中间件)
    │  ├─model          (结构体层)
    │  ├─resource       (资源)
    │  ├─router         (路由)
    │  ├─service         (服务)
    │  └─utils          (公共功能)
    └─web            (前端文件)
        ├─public        (发布模板)
        └─src           (源码包)
            ├─api       (向后台发送ajax的封装层)
            ├─assets    (静态文件)
            ├─components(组件)
            ├─router    (前端路由)
            ├─store     (vuex 状态管理仓)
            ├─style     (通用样式文件)
            ├─utils     (前端工具库)
            └─view      (前端页面)

5. 主要功能

前端文件参考: src\view\superAdmin\api\api.vue 
后台文件参考: model\dnModel\api.go 

6. 计划任务

  • [ ] 导入,导出Excel
  • [ ] Echart图表支持
  • [ ] 工作流,任务交接功能开发
  • [ ] 单独前端使用模式以及数据模拟

7. 知识库

7.1 团队博客

https://www.yuque.com/flipped-aurora

7.2 教学视频

(1)环境搭建

Bilibili:https://www.bilibili.com/video/BV1Fg4y187Bw/ (v1.0版本视频,v2.0操作相同目录不同)

(2)模板使用

Bilibili:https://www.bilibili.com/video/BV16K4y1r7BD/ (v1.0版本视频,v2.0操作相同目录不同)

(3)2.0目录以及开发体验

Bilibili:https://www.bilibili.com/video/BV1aV411d7Gm#reply2831798461

(4)golang基础教学视频录制中...

https://space.bilibili.com/322210472/channel/detail?cid=108884

8. 联系方式

8.1 技术群

QQ交流群:622360840

QQ 群

微信交流群

微信

添加微信,备注"加入gin-vue-admin交流群"

9. 捐赠

如果你觉得这个项目对你有帮助,你可以请作者喝饮料 :tropical_drink: 点我

10. 商用注意事项

如果您将此项目用于商业用途,请遵守Apache2.0协议并保留作者技术支持声明。