亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

GORM 在插入時不填充外鍵 ID

GORM 在插入時不填充外鍵 ID

Go
aluckdog 2022-08-01 10:41:28
我有以下結構:type Player struct {    ID                       uint `gorm:"primarykey"`    ClubID                   uint    Club                     Club}type Club struct {    ID   uint `gorm:"primarykey"`    Name string `gorm:"unique"`}我正在從文件中加載此信息,如下所示:func TestSQLite(t *testing.T) {    pr, err := db.Init("file:memdb1?mode=memory&cache=shared")    if err != nil {        fmt.Println("Error on Init: " + err.Error())        t.Fail()    }    p := domain.Player{        Club: domain.Club{Name: "Hello"},        Shooting: 23,        PlayerPositions: []domain.Position{            {                Name: "SM",            },        },    }    if err := pr.Create(&p); err != nil {        fmt.Println("Error creating player: " + err.Error())        t.Fail()    }    c := domain.Player{        Club: domain.Club{Name: "Hello"},        Shooting: 23,        PlayerPositions: []domain.Position{            {                Name: "SM",            },        },    }    if err := pr.Create(&c); err != nil {        fmt.Println("Error creating player: " + err.Error())        t.Fail()    }    t.Logf("%d", p.ClubID)    t.Logf("%d", c.ClubID)    if c.ClubID != p.ClubID {        t.Fail()    }}結果我有:    db_test.go:45: 1    db_test.go:46: 0用于創建的代碼是    return pr.preload().Debug().Create(&p).Error和預載荷為func (pr *PlayerRepository) preload() *gorm.DB {    return pr.connection.        Preload("Club")}我不確定我做錯了什么。
查看完整描述

1 回答

?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

這是一個錯誤。金珠修修好了。

https://github.com/go-gorm/gorm/issues/3890


查看完整回答
反對 回復 2022-08-01
  • 1 回答
  • 0 關注
  • 177 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號