V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
pliex
V2EX  ›  程序员

gin-vue-admin gin+vue 开源快速后台管理系统项目模板

  •  1
     
  •   pliex · 2019-11-28 11:22:51 +08:00 · 1735 次点击
    这是一个创建于 1857 天前的主题,其中的信息可能已经有所发展或是发生改变。

    gin-vue-admin gin+vue 开源快速项目模板

    项目地址:https://github.com/piexlmax/gin-vue-admin

    写在前面

    本项目主要是小弟在接各种私活的时候发现频繁得书写 CURD、权限管理、用户管理、列表、分页、上传下载、日志包封装、文档自动化等等功能
    为了方方便各位个人开发者快速搭建项目基础模型,于是开发本模板,也为了以后自己可以剩下一些初期开发的功夫
    本身是前端出身,所以对于后端的项目目录或者架构可能偏向前端思维,如果有什么地方需要改动感谢大家 iss
    强烈希望在各位的帮助下,此项目可以用于企业级项目的开发
    

    环境搭建教学视频

    腾讯视频: https://v.qq.com/x/page/e3008xjxqtu.html

    模板使用教学及展示视频

    腾讯视频: https://v.qq.com/x/page/c3008y2ukba.html

    技术选型

    1.后端采用 golang 框架 gin,快速搭建基础 restful 风格 API
    2.前端项目采用 VUE 框架,构建基础页面
    3.数据库采用 Mysql(5.6.44)版本不同可能会导致 SQL 导入失败,可能会引用 redis 作为缓存数据库使用(待定)
    4.使用 swagger 构建自动化文档
    5.使用 fsnotify 和 viper 实现 json 格式配置文件
    6.使用 logrus 实现日志记录
    7.使用 gorm 实现对数据库的基本操作
    

    项目说明

    golang 项目存放于 QMPlusServer 文件夹下,内部 config 存放 mysql 相关配置。可以根据自己的 mysql 数据库名 用户名 密码修改对应配置
    vue 项目存放于 QMPlusVuePage 文件夹下
    开源不易,感谢各位支持,错误指出即刻改正,改写纠错,感谢 star 支持
    

    TODO

    1.基本用户注册登录 √
    2.用户等基础数据 CURD √
    3.调用 des 实现数据加密 √
    4.实现基于 jwt 的权限管理 
    5.实现基于七牛云的文件上传操作(需提前注册七牛云账号) √(为了方便大家测试,我公开了自己的七牛测试号的各种重要 token,恳请大家不要乱传东西)
    6.等装了分页方法,实现分页接口并且复制粘贴就可使用分页 √
    7.前端分页 mixin 封装 分页方法调用 mixins 即可 √
    8.图片上传前端下载功能 √ <后端下载功能开发中>
    9...看项目进度想到什么做什么,主要目的是方便各位快速接私活,完成项目基础功能
    10.各位开发者可以在 issues 提出自己工作中遇到的重复性大或者实现复杂的需求,我尽可能提供示例代码。
    

    计划任务

    1.富文本编辑器,MarkDown 编辑器功能嵌入
    2.导入,导出 Excel
    3.Echart 图表支持
    4.object 模式树
    5.工作流,任务交接功能开发
    6.结构体前端直接录入生成对应结构体及自动建表
    7.单独前端使用模式以及数据模拟
    

    使用说明

    1.golang api server 基于 go.mod 如果 golang 版本低于 1.11 请自行升级 golang 版本
    2.支持 go.mod 的 golang 版本在运行 go list 和 编译之前都会自动下载所需要的依赖包
    3.go server 建议使用 goland 运行 减少出错可能性
    4.前端项目 node 建议高于 V8.6.0
    5.到前端项目目录下运行 npm i 安装所需依赖
    6.依赖安装完成直接运行 npm run dev 即可启动项目
    7.如果要使用 swagger 自动化文档 首先需要安装 swagger
    
    go get -u github.com/swaggo/swag/cmd/swag
    

    由于国内没法安装到 X 包下面的东西 如果可以翻墙 上面的命令就可以让你安心使用 swagger 了 如果没有翻墙的办法那就先装一下 gopm

    go get -v -u github.com/gpmgo/gopm
    

    此时你就可以使用 gopm 了 这时候执行

    gopm get -g -v github.com/swaggo/swag/cmd/swag
    

    等待安装完成以后 到我们 GOPATH 下面的 /src/github.com/swaggo/swag/cmd/swag 路径 执行

    go install
    

    安装完成过后在项目目录下运行

    swag init
    

    项目文件夹下面会有 doc 文件夹出现 这时候登录 localhost:8888/swagger/index.html 就可以看到 swagger 文档啦

    个人博客

    http://www.henrongyi.top ,内有前端框架教学视频,GOLANG 基础入门视频正在筹备中。
    如果觉得项目对您有所帮助可以添加我的个人微信:shouzi_1994,欢迎您提出宝贵的需求。
    

    最后

    正在研发前端独立版本分支...可以不依赖 go 服务进行使用的后台模板
    感谢 krank666 协同开发
    可使用的初始 mysql 脚本正在制作中...
    
    27 条回复    2019-11-29 11:32:15 +08:00
    vsitebon
        1
    vsitebon  
       2019-11-28 11:34:35 +08:00   ❤️ 1
    加油,感谢开源分享
    tuboshuv1
        2
    tuboshuv1  
       2019-11-28 11:44:37 +08:00
    想骂你垃圾浪费时间。犹豫了一下。
    还是骂出来了。这种类型的东西有了成熟的,你搞一个也无妨,技术总是要进步的。你搞这么一大陀文字,我点进去发现没有演示 demo。然后留的那个腾讯视频还他妈有一分钟的广告。
    所以想骂你垃圾。
    开源是好事,但是冷静一点!搞这么一坨,去看腾讯视频广告吗?
    murmur
        3
    murmur  
       2019-11-28 11:46:15 +08:00
    @tuboshuv1
    ??喷人有点脑子好么,腾讯视频的广告是楼主加的???还是你想让楼主传 bilibili,放 youku 不一样有广告
    pliex
        4
    pliex  
    OP
       2019-11-28 11:47:14 +08:00
    视频考虑发布到 bilibili,实在抱歉
    lifespy
        5
    lifespy  
       2019-11-28 11:47:27 +08:00
    你博客凉了
    pliex
        6
    pliex  
    OP
       2019-11-28 11:48:17 +08:00
    @lifespy 博客最近再过审核 暂时关闭
    fogg
        7
    fogg  
       2019-11-28 11:48:21 +08:00
    博客无法打开
    ![image.png]( https://i.loli.net/2019/11/28/tekxurLA3Ev58DW.png)
    pliex
        8
    pliex  
    OP
       2019-11-28 11:49:19 +08:00
    @fogg 博客最近在过审核 暂时关闭 服务器迁移
    lifespy
        9
    lifespy  
       2019-11-28 11:49:37 +08:00
    过审核? vu 不香吗,do 不香吗
    pliex
        10
    pliex  
    OP
       2019-11-28 11:50:25 +08:00
    @lifespy 说的我突然想去尝尝 vu
    pliex
        11
    pliex  
    OP
       2019-11-28 12:00:57 +08:00
    @tuboshuv1 可能是重复造轮子了,视频会考虑上 bilibili,demo 这类系统无法提供,除非定期还原数据库,路由,权限,菜单均是动态可配置,随意一个人修改都会导致系统无法使用。不给最高权限又会导致无法体验到核心内容。可能我打了这么多字也是浪费时间。
    tsotolia
        12
    tsotolia  
       2019-11-28 13:17:52 +08:00   ❤️ 1
    我感觉题主的东西很不错啊,感谢开源,加油呐!
    tq0106
        13
    tq0106  
       2019-11-28 13:18:44 +08:00 via iPhone   ❤️ 1
    收藏了,楼主加油!
    pliex
        14
    pliex  
    OP
       2019-11-28 14:03:06 +08:00
    @tsotolia 感谢 不足之处还会继续完善 谢谢鼓励
    justin2018
        15
    justin2018  
       2019-11-28 14:28:11 +08:00
    已收藏 学习了~
    TonyHoAspire
        16
    TonyHoAspire  
       2019-11-28 14:52:21 +08:00
    对于这类 Vue + Go/Gin 搭建的后台管理系统,有比较完善开源的吗?
    pliex
        17
    pliex  
    OP
       2019-11-28 15:34:58 +08:00
    @TonyHoAspire 因为没有才做的。。。都是一些简单的权限管理
    kidult
        18
    kidult  
       2019-11-28 17:13:51 +08:00
    抱歉,说句实话,大家可能缺的是活,而不是更快把活干完
    pliex
        19
    pliex  
    OP
       2019-11-28 18:02:17 +08:00
    @kidult 我貌似可以提供点活
    yushiro
        20
    yushiro  
       2019-11-28 18:14:29 +08:00 via iPhone
    嗯,支持一个!
    dodo2012
        21
    dodo2012  
       2019-11-28 18:48:27 +08:00
    不错,特别是工作流这块想学习下 go 的实现
    loading
        22
    loading  
       2019-11-28 18:55:16 +08:00 via Android
    感谢,学习一下。
    ihidchaos
        23
    ihidchaos  
       2019-11-28 19:13:38 +08:00
    开源不易,加油干
    pliex
        24
    pliex  
    OP
       2019-11-28 19:18:24 +08:00 via Android
    @dodo2012 现在工作流正在开发状态 未完工前端没有提供入口 等完成了会第一时间更新
    labulaka521
        25
    labulaka521  
       2019-11-28 20:30:00 +08:00 via Android
    感谢 哈哈 又可以 block 一个傻逼
    zazalu
        26
    zazalu  
       2019-11-28 20:34:05 +08:00 via Android
    666 可以的 正想着玩玩 golang 的后台开发呢。
    falcon05
        27
    falcon05  
       2019-11-29 11:32:15 +08:00
    说实话,就算有轮子,这类工具还是自己写的顺手
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   945 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:55 · PVG 04:55 · LAX 12:55 · JFK 15:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.