Kaedah GoLang untuk memuatkan objek bersarang menggunakan GORM
P粉448346289
P粉448346289 2024-03-27 13:20:01
0
2
458

Hai, katakan saya mempunyai 3 struktur dalam format berikut

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 ""
      }
    }
  }
]

Di sini saya mendapat nilai pemilik dengan nilai lalai. Contoh yang diberikan digunakan untuk menerangkan apa yang saya ingin capai.

Saya perlukan cara bagaimana untuk memuatkan struktur pemilik dan nilainya semasa memuatkan pekerja?

Sebarang cadangan akan sangat dihargai dan terima kasih terlebih dahulu

P粉448346289
P粉448346289

membalas semua(2)
P粉642920522

Anda boleh menggunakan tag gorm:"embedded":

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
}
P粉148782096

Ini adalah penyelesaian yang saya temui untuk memuatkan objek bersarang daripada struktur terbenam

db.Preload("Company").Preload("Company.Owner").Find(&Employees)
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!