第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

GoLang 如何使用 GORM 加載嵌套對象

GoLang 如何使用 GORM 加載嵌套對象

Go
慕尼黑5688855 2023-01-03 10:08:12
假設(shè)我有 3 個結(jié)構(gòu),格式如下type Employee struct {  Id int  Name string  CompanyId int `gorm:"column:companyId"`  Company Company `gorm:"foreignKey:CompanyId"`}type Company struct {  Id int  CompanyName string  OwnerId `gorm:"column:owner"`  Owner Owner `gorm:"foreignKey:OwnerId"`}type Owner struct {  Id int  Name string  Age int  Email string}func (E Employee) GetAllEmployees() ([]Employee, error) {  Employees := []Employee  db.Preload("Company").Find(&Employees)}// -- -- There response will be like[  {    id: 1    name: "codernadir"    company: {      id: 5      company_name: "Company"      owner: {        id 0        Name ""        Age 0        Email ""      }    }  }]在這里,我使用默認(rèn)值獲取 Owner 值。給定的例子是為了描述我想要達(dá)到的目標(biāo)。當(dāng)我加載員工時,我需要一種方法如何加載 Owner 結(jié)構(gòu)及其值?任何建議將不勝感激,并在此先感謝
查看完整描述

2 回答

?
慕雪6442864

TA貢獻(xiàn)1812條經(jīng)驗 獲得超5個贊

您可以使用gorm:"embedded"標(biāo)簽:


type Employee struct {

  Id int

  Name string

  CompanyId int `gorm:"column:companyId"`

  Company Company `gorm:"embedded"`

}


type Company struct {

  Id int

  CompanyName string

  OwnerId `gorm:"column:owner"`

  Owner Owner `gorm:"embedded"`

}


type Owner struct {

  Id int

  Name string

  Age int

  Email string

}


查看完整回答
反對 回復(fù) 2023-01-03
?
HUX布斯

TA貢獻(xiàn)1876條經(jīng)驗 獲得超6個贊

這是我發(fā)現(xiàn)的從嵌入式結(jié)構(gòu)加載嵌套對象的解決方案

db.Preload("Company").Preload("Company.Owner").Find(&Employees)


查看完整回答
反對 回復(fù) 2023-01-03
  • 2 回答
  • 0 關(guān)注
  • 276 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號