1
ilylx2008 2024 年 7 月 14 日
需要
|
2
mogita 2024 年 7 月 14 日 via iPhone
dto 和 dao 各一份(二者异构大有可能)
|
3
zjh7890 2024 年 7 月 14 日
可以利用 IDEA 插件让 ChatGPT 帮你生成样板代码
|
4
smalnote 2024 年 7 月 14 日 probobuf 结构自动生成的,要加 gorm model 的 tag 要改 proto 文件重新生成,而且同一个字段在 protobuf 中的类型跟在 gorm model 的类型可能不一样(int, int32, int64, uint, etc),分开定义后期迭代省事,除非预期不用改。
|
5
ninjashixuan 2024 年 7 月 14 日
就算不是微服务也是两套吧
|
6
dobelee 2024 年 7 月 14 日
手撸一个 pb ,让 ChatGPT 自动生成 DDL 、GORM.
|
7
caicaiwoshishui 2024 年 7 月 14 日
肯定两套呀,po 的数据类型不一定都会在 pb 展示呀
|
8
zzhaolei 2024 年 7 月 14 日 需要两套。可以考虑 copier 库,可以根据字段名,复制两个结构。
|
9
wenyuhe 2024 年 7 月 14 日
两者异构很正常, 但是枚举可以定义在 pb 里。该关联的关联,该分开的分开
|
11
gvison 2024 年 7 月 15 日 使用工具连接数据库之后就可以生成 pb 和 gorm 两套对应的代码,示例 https://go-sponge.com/ui/micro-service
|
12
ryan961 2024 年 7 月 15 日 @zzhaolei #8 这个是使用 reflect 实现的,接口中使用性能堪忧。推荐使用 https://github.com/jmattheis/goverter 脚本预生成转换代码,好用、性能高
|
13
zzhaolei 2024 年 7 月 15 日
@ryalu 我使用的场景就是 dao 到 dto ,bench 的速度还行,比 mapstructure 快多了。你说的这个也不错,就是有一点麻烦。
|
14
loux 2024 年 7 月 15 日
pb 可以用自定义结构体类型 google.protobuf.Struct ,序列化下就行
|