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

发布于 1周前 作者 zlyuanteng 来自 Go语言

Vgo

介绍 📖

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

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

代码仓库 ⭐(记得 Star⭐)

安装使用步骤 📔

  • 下载:
git clone -b https://github.com/xuewuzhiijngych/vgo.git
  • 安装:

  • 使用 Mysql8 ,导入根目录的 go_study.sql 文件。

  • 准备 redis

  • 修改根目录下的 config.yaml 文件,配置 Mysql 、Redis 、JWT 等信息。

  • 根目录的 asynq.yml 文件是配置 asynq 命令工具的,不使用,忽略即可。

  • 执行以下命令安装依赖包:

go mod tidy
  • 运行:
go run main.go

项目目录 📚

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

权限管理 🔐

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

Map 结合模型验证 🏭

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

自定义翻译器 📝

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

后续计划 🔮

  • 后续将陆续增加更多功能,欢迎大家共同参与进来。
  • 如有任何问题,请联系作者:[email protected]

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

更多关于Golang Go语言中Vgo(基于 Gin 开发的开源服务端框架)[20240909 更新]增加表单验证器(结合 Map 和 Struct)、自定义翻译,使用 json 定义翻译字典的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html

2 回复

很不错的项目,适合学习 go

更多关于Golang Go语言中Vgo(基于 Gin 开发的开源服务端框架)[20240909 更新]增加表单验证器(结合 Map 和 Struct)、自定义翻译,使用 json 定义翻译字典的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


针对您提到的Vgo框架(基于Gin开发的开源服务端框架)在2024年9月9日的更新,增加表单验证器以及自定义翻译功能,并使用JSON定义翻译字典,以下是我的专业回复:

Vgo框架此次更新引入的表单验证器功能,对于提升服务端数据处理的严谨性和安全性具有重要意义。通过将表单验证与Map和Struct结合,开发者可以更加灵活、高效地定义和验证客户端提交的表单数据,有效减少因数据格式或内容错误导致的服务端异常。

同时,自定义翻译功能的增加,无疑为Vgo框架的多语言支持提供了强有力的支持。使用JSON定义翻译字典,不仅使得翻译内容的管理更加直观、便捷,还便于在不同语言间进行切换和扩展,从而满足全球化应用的需求。

在实际应用中,开发者可以充分利用Vgo框架的这些新功能,优化表单验证流程,提升用户体验。同时,通过合理设计翻译字典,确保应用在不同语言环境下的准确性和一致性。

总之,Vgo框架此次的更新,不仅增强了框架的功能性和实用性,还为开发者提供了更加便捷、高效的开发体验。期待Vgo框架在未来能够持续迭代优化,为Go语言开发者带来更多惊喜和便利。

回到顶部