我正在嘗試開發一個 api,以允許用戶指定任意數據結構,并根據他們定義的結構輕松設置在自動生成的 postgres 數據庫上執行 CRUD 操作的端點。目前,我一直在使用 gorm,并且能夠根據一組用戶定義的結構自動生成一個數據庫,該數據庫支持所有類型的關系(有一個、一對多等)。當通過端點發送 JSON 時,我還能夠插入到生成的數據庫中。我發現的問題是當我嘗試接收數據時。似乎許多 go ORM 的不足之處在于將所有表中的數據映射回父結構的嵌套結構。例如,如果用戶定義:type Member struct { ID string FirstName string Hometown Hometown `gorm:"ForeignKey:MemberRefer"`}type Hometown struct { ID string City string Province string MemberRefer string}數據庫創建表:成員ID名家鄉ID城市省member_refer但是,在檢索數據時,映射回來的只是:{ "id": "dc2bb591-506f-40a5-a141-bdc0c8410ba1", "name": "Kevin Krishna", "hometown": { "id": "", "city": "", "province": "" }}有誰知道支持這種行為的 go orm?
1 回答

慕萊塢森
TA貢獻1810條經驗 獲得超4個贊
5 秒谷歌搜索向我展示了答案:
預加載關聯
現在您實際上已將它們正確關聯,您可以 .Preload() 獲取所需的嵌套對象:db.Preload("GoogleAccount").First(&user)
- 1 回答
- 0 關注
- 148 瀏覽
添加回答
舉報
0/150
提交
取消