go - 没有相关对象的查询

标签 go go-gorm

我有以下查询:

db.Where("user_id = ?", tmpUser.ID).Find(&subscriptions)

订阅是订阅对象的一部分。

问题是,它将输出所有包含相关对象的订阅(如用户对象)。

如何查询数据库并仅获取订阅记录而没有相关的(属于并且有很多)对象?

最佳答案

您可以使用auto_preload设置:

db.Set("gorm:auto_preload", false).Where("user_id = ?", tmpUser.ID).Find(&subscriptions)

或者,您可以使用PRELOAD struct标记:
type Subscription struct {
    ID     uint
    User   User `gorm:"PRELOAD:false"`
    UserID uint
}

https://gorm.io/docs/preload.html#Auto-Preloading

关于go - 没有相关对象的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59084426/

相关文章:

go - 允许在 net.Conn 和 channel 上选择 Go Routine 的方法?

mongodb - Golang MongoDB 不返回条件查询

go - runtime.duffcopy 被多次调用

go - 如何在 GORM 中建立一对一关系?

sql-server - 如何为 GORM 关闭 IDENTITY_INSERT

go - 如何将命名模板的结果发送到函数

go - 寻求有关如何在 Golang 中管理微服务的帮助

go - Updates() 似乎没有更新关联

go - 在gorm中创建many2many关联时,是否可以添加自定义列?

json - 阻止 gorm 在 where 子句中提示 Unknown column ‘users.deleted_at’