前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vgo(基于 Gin 开发的开源服务端框架)[20240909 更新]增加表单验证器(结合 Map 和 Struct)、自定义翻译,使用 json 定义翻译字典

Vgo(基于 Gin 开发的开源服务端框架)[20240909 更新]增加表单验证器(结合 Map 和 Struct)、自定义翻译,使用 json 定义翻译字典

原创
作者头像
Haoking
发布2024-09-09 16:00:07
780
发布2024-09-09 16:00:07

Vgo

介绍 📖

Vgo 是一款基于 Gin 开发的开源服务端框架。

  • 使用了Redis、Mysql、JWT、队列、等技术栈。
  • 比较适合Golang初学者作为学习项目学习。
  • 当前框架内实现了基本的Rbac权限管理(使用casbin)、队列、websocket、文件日志等功能。
  • 后续将陆续增加更多功能,欢迎大家共同参与进来。
  • 本项目主要是为了学习 Golang 而开发的,所以代码中难免有不足之处,还请大家多多包涵。

代码仓库 ⭐(记得 Star⭐)

安装使用步骤 📔

  • 下载:
代码语言:shell
复制
git clone -b https://github.com/xuewuzhiijngych/vgo.git
  • 安装:
  • 使用Mysql8,导入根目录的go_study.sql文件。
  • 准备redis
  • 修改根目录下的config.yaml文件,配置Mysql、Redis、JWT等信息。
  • 根目录的asynq.yml文件是配置asynq命令工具的,不使用,忽略即可。
  • 执行以下命令安装依赖包:
代码语言:shell
复制
go mod tidy
  • 运行:
代码语言:shell
复制
go run main.go

项目目录 📚

代码语言:shell
复制
Vgo
├─ app                        # Vite 配置项
├─ AdminUser                  # 模块
│  ├─ Bapi                    # Bapi 后台接口
│  ├─ Api                     # Api 前台接口
│  ├─ Model                   # Model 模型
│  ├─ Router                  # Router 路由
├─ bootstrap                  # 框架启动文件
├─ core                       # 框架核心文件
│  ├─ ...                     # 后续出详细介绍(亦可以自己通过源码了解)
├─ job                        # 队列
├─ route                      # 路由
├─ storage                    # 日志或静态资源
│  ├─ logs                    # 日志
├─ asynq.yml                  # asynq配置文件
├─ config.yaml                # 框架配置文件

前台使用 🌎

功能

代码生成 🏢

  • 开发时Go版本:go version go1.22.5 windows/amd64go run vTools/vTools.go --method=Curd --module=Product --note=产品
  • 版本兼容未测试,预想问题不大。
  • 生成基本增删改查的golang代码,可使用命令:
  • Curd:
  • 执行代码后,会在app目录下生成一个Product模块,里面包含了增删改查的相关代码。
  • 随后需要自己在根目录route/router.go文件中注册路由。【后期实现自动注册】

权限管理 🔐

  • 基于casbin实现的权限管理,可实现用户角色、角色权限、用户权限等多种权限控制。
  • 具体使用方法请参考VgoAdmin项目。

Map结合模型验证 🏭

  • 见app/User/Api/User.go 的 Register方法

自定义翻译器 📝

  • 翻译文字定义在根目录lang下trans.Trans("手机号不能为空", ""),
  • 使用:
  • 具体见:app/User/Api/User.go 的 Register方法

后续计划 🔮

  • 后续将陆续增加更多功能,欢迎大家共同参与进来。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Vgo
    • 介绍 📖
      • 代码仓库 ⭐(记得 Star⭐)
        • 安装使用步骤 📔
          • 项目目录 📚
            • 前台使用 🌎
              • 功能
                • 代码生成 🏢
                • 权限管理 🔐
                • Map结合模型验证 🏭
                • 自定义翻译器 📝
                • 后续计划 🔮
            相关产品与服务
            云数据库 Redis
            腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档