【问题标题】:How to preloading in gorm with a struct that have another struct from table?如何使用具有表中另一个结构的结构预加载gorm?
【发布时间】:2021-04-20 15:54:18
【问题描述】:

又是我。 我现在可以在gorm中预加载... 但问题现在扩大了。 我有 3 个需要获取数据的结构 首先是

type Deal struct{
DealId int
Attachments []Attachment
}
type Attachment struct{
DealId int
ProductId int
AttachmentId int
Product 
}
type Product struct{
ProductId int
}

那么如何使用我的 3 张桌子在 gorm 中进行连接和预加载?有什么建议吗? 我需要与所有附件达成协议...尝试不使用产品是可以的。但是当需要产品时......问题是我无法在预加载时将其与附件连接起来 谢谢

【问题讨论】:

    标签: go


    【解决方案1】:

    关于嵌套预加载的所有信息here.

    对于您的情况,它可能如下所示:

    var deals []Deal
    err := db.Preload("Attachments").Preload("Attachments.Product").Find(&deals).Error
    

    【讨论】:

    • 没问题 :) 。如果对您有用,请对其进行投票并将其作为可行的解决方案进行检查。
    • 非常感谢。对我这种新手第一次尝试golang及其框架很有帮助
    • 这个解决方案的问题是当您查询数千笔交易时它会变得很慢
    猜你喜欢
    • 1970-01-01
    • 2022-07-26
    • 1970-01-01
    • 2020-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多