go-zero 使用 gorm,gozero gorm
先附上网址
sql 转 gorm
https://www.printlove.cn/tools/sql2gormgo-zero 官网
https://go-zero.dev/cn/docs/introduction/gorm 官网
https://gorm.io/zh_CN/docs/index.html
新建个common,用来存放 gorm初始化代码
// 目录格式
common
├── xgorm
│ └── gorm.go
└── xxx...
// common/xgorm/gorm.gofunc NewGorm(dsn string) *gorm.DB {db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})if err != nil {panic(err)}return db
}
srv 里初始化
// svc/servicecontext.gotype ServiceContext struct {Config config.ConfigGorm *gorm.DB
}func NewServiceContext(c config.Config) *ServiceContext {dsn := "root:123456@tcp(0.0.0.0:3306)/dbName?charset=utf8mb4&parseTime=true&loc=Asia%2FShanghai"return &ServiceContext{Config: c,Gorm: xgorm.NewGorm(dsn),}
}
使用方法
// 例如:在 logic 文件里使用l.svcCtx.Gorm.First(&userModel)
package logicimport ("context""github.com/gogf/gf/v2/encoding/gbase64""index-srv/service/user/model""index-srv/service/user/cmd/rpc/internal/svc""index-srv/service/user/cmd/rpc/types""github.com/zeromicro/go-zero/core/logx"
)type GetUserInfoLogic struct {ctx context.ContextsvcCtx *svc.ServiceContextlogx.Logger
}func NewGetUserInfoLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetUserInfoLogic {return &GetUserInfoLogic{ctx: ctx,svcCtx: svcCtx,Logger: logx.WithContext(ctx),}
}func (l *GetUserInfoLogic) GetUserInfo(in *__.GetUserInfoReq) (*__.GetUserInfoRes, error) {// todo: add your logic here and delete this line// todo 用uid查询用户数据var userModel model.Userfirst := l.svcCtx.Gorm.Where(&model.User{UId: in.UId}).First(&userModel)if first.Error != nil {return nil, first.Error}return &__.GetUserInfoRes{}, nil
}
go-zero 使用 gorm,gozero gorm相关推荐
- Gorm之gorm.io/gorm源码
文章目录 Gorm之gorm.io/gorm源码 1.gorm.Open函数 2.gorm.Dialector接口 3.gorm.Config结构体 4.gorm.DB结构体 4.1gorm.DB结构 ...
- golang学习之gorm(一):Gorm介绍
文章目录 一.gorm介绍: 1. 什么是orm? 2. gorm 3.安装 4.官方文档: 二.连接数据库: 1. mysql: 2.表操作: 3.自动迁移: 三.数据操作: 1. 简单的添加数据 ...
- Gorm之gorm特性、下载安装gorm依赖
文章目录 Gorm之下载安装gorm依赖 1.gorm特性 2.下载mysql依赖/gorm依赖 Gorm之下载安装gorm依赖 注:本文是基于Windos系统上 gorm.io/gorm@v1.23 ...
- Gorm之gorm.Model详解
文章目录 Gorm之Model模型 1.模型定义 2.gorm.Model模型定义 3.嵌套gorm.Model结构体 4.嵌套普通结构体 5.嵌入普通结构体并添加前缀 6.自定义模型 Gorm之Mo ...
- Go语学习笔记 - gorm使用 - gorm处理错误 Web框架Gin(十)
学习笔记,写到哪是哪. 接着上一篇文章:Go语学习笔记 - gorm使用 - 原生sql.命名参数.Rows.ToSQL | Web框架Gin(九)_的博客-CSDN博客 目前gorm对数据库的一些操 ...
- 从零开始实现基于go-zero框架的微服务电商项目(三)——gorm、redis、腾讯云SMS、validate、md5加密、日志输入到kafka的添加
从零开始实现基于go-zero框架的微服务电商项目(三)--gorm.redis.腾讯云SMS.validate.md5加密.日志输入到kafka的添加 项目地址:liuxianloveqiqi/Xi ...
- golang微服务框架go-zero系列-1:适合创业的golang微服务框架go-zero + 金光灿灿的gorm V2实践
为什么使用go-zero 可以有第三个选择 golang圈子不大,微服务框架框架屈指可数:除了go-micro.go-kit,几乎没有其他选择.go-zero为此提供第三个可能. go-micro 对 ...
- Go 语言编程 — gormigrate GORM 的数据库迁移助手
目录 文章目录 目录 前言 gormigrate 核心结构体 实现分析 版本定义 InitSchema Migration 版本记录(历史) 版本升级和回退 前言 GORM v2 gormigrate ...
- Go 语言编程 — gorm 数据库版本迁移
目录 文章目录 目录 前言 AutoMigrate 示例 Migrator 接口(DDL 操作方法) 表操作 列操作 约束操作 索引操作 数据库版本控制 参考文档 前言 本文示例为 GORM V2.0 ...
最新文章
- 《包青天》中的《鸳鸯蝴蝶梦》单元,剧中有一个很漂亮的女子叫“离垢”
- 6月 Python 开源项目 Top10,还不收藏~
- C# 字符、字符串过滤,只能输入数字、中文、英文、大写、小写(转)
- request的各种方法大全
- Kontakt 6 for Mac安装 - 专业的音乐采样器,行业标准式的采样器
- 拓端tecdat|R语言:EM算法和高斯混合模型的实现
- php怎样注释代码块,vscode怎样注释方法代码块
- 基于bootstrap的双边栏选择框_iphone自带Dock栏美化功能,你out了
- modelsim安装_XLINUXFPGA开发工具篇modelsim的安装
- ISO 17799 /27001标准简介
- 计算机机房安全消防管理制度,机房消防安全管理制度
- 免费asp.net空间
- ubantu apt命令失败
- Unity 3D鼠标操作实现旋转、缩放观察物体
- “中国童装之都”牵手九州云,共建智慧园区促产业转型
- 这台笔记本最适合程序员编程!!!
- 一键U盘装系统 电脑为什么突然打不开
- JS可选链操作符 (?.)的使用
- 复制品游戏中计算机的作用,是致敬还是抄袭?来看看这个《塞尔达传说》的像素级复制品...
- FluorineFX开源库 使用教程(service配置xml说明)