首页 > 解决方案 > gorm嵌套预加载中不受支持的关系

问题描述

我尝试从一对一嵌套预加载数据,但出现“不支持的现实”错误。

type Order struct {
    global.GVA_MODEL
    Owner            int          `json:"owner" form:"owner" gorm:"column:owner;"`
    SupplierId       int          `json:"supplierId" form:"supplierId" gorm:"column:supplier_id;"`
    Supplier         Supplier     `json:"supplier" gorm:"foreignkey:SupplierId"`
}

type Supplier struct {
    global.GVA_MODEL
    PaymentTypeId   int     `json:"paymentTypeId" form:"paymentTypeId" gorm:"column:payment_type_id"`
    PaymentType     PaymentType `json:"paymentType" gorm:"foreignKey:PaymentTypeId;"`
}

type PaymentType struct {
      global.GVA_MODEL
      name  string `json:"name" form:"name" gorm:"column:name;"`
}

这就是调用顺序嵌套 Proload 的函数。

var orders []model.Order
err = db.Preload("Supplier").Preload("Supplier.PaymentType").Find(&orders).Error

标签: gogo-gorm

解决方案


推荐阅读