go:自动生成gorm表结构体代码

使用https://github.com/xxjwxc/gormt工具

总结:先下载源代码,编译二进制文件,执行二进制文件,可以通过gui生成,生成的代码会在./model目录下。

  1. 在终端执行go get -u -v github.com/xxjwxc/gormt@latest 下载源代码,本人在mac下载最新会失败,建议去github找version下载go get -u -v github.com/xxjwxc/gormt@v2.1.gorm

  2. 在下载目录下执行make命令,不同系统对应
    make windows/make linux/make mac

  3. 生成二进制文件gormt
    在这里插入图片描述

  4. 执行./gormt -g=true 使用gui运行程序,有其他方式运行具体见github。在这里插入图片描述

  5. 生成代码在./model下,表结构体代码在[database].go文件中。

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过使用 GORM 的 Select 和 Scan 方法实现将结构体数据传入另一个结构体结构体切片字段里。 假设有两个结构体: ```go type User struct { ID uint `gorm:"primaryKey"` Name string `gorm:"not null"` } type Group struct { ID uint `gorm:"primaryKey"` Name string `gorm:"not null"` Users []User `gorm:"-"` UserID uint `gorm:"not null"` } ``` 其中,Group 结构体中的 Users 字段是一个结构体切片,示该组中的所有用户。UserID 字段是 User 的外键。 现在想要将一些 User 数据传入到 Group 结构体的 Users 字段中,可以使用 GORM 的 Select 和 Scan 方法实现。具体步骤如下: 1. 根据条件查询出需要的 User 数据,比如: ```go var users []User db.Where("name in (?)", []string{"Tom", "Jerry"}).Find(&users) ``` 2. 将查询出的 User 数据转化为 Group 结构体中的 Users 字段所需的切片类型: ```go var groupUsers []GroupUser for _, user := range users { groupUsers = append(groupUsers, GroupUser{ ID: user.ID, Name: user.Name, }) } ``` 其中,GroupUser 是一个用于转化 User 数据的结构体: ```go type GroupUser struct { ID uint `gorm:"primaryKey"` Name string `gorm:"not null"` } ``` 3. 将转化后的 groupUsers 切片赋值给 Group 结构体的 Users 字段: ```go var group Group db.Where("id = ?", 1).First(&group) group.Users = groupUsers db.Save(&group) ``` 通过以上步骤,就可以将查询出的 User 数据传入到 Group 结构体的 Users 字段中了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值