如何在 gorm 中插入空外键?
How to insert a null foreign key in gorm?
我在 gorm 中有一笔交易 table,如下所示:
type Transaction struct {
gorm.Model
UserID string `gorm:"index"`
TradeID int
Trade Trade
ExternalID string
Amount float32
Type string
Description string
}
我正在尝试插入一个没有交易的交易:
DB.Create(&Transaction{UserID: "user-1", Type: "unblock", Amount: 50})
这失败了,因为事务结构将键的 int 值默认为 0,因此在数据库级别插入失败,因为我没有 id = 0 的交易。
我该怎么做?
您可以将 TradeID
更改为指针,因此默认值为 nil
。
TradeID *int
我在 gorm 中有一笔交易 table,如下所示:
type Transaction struct {
gorm.Model
UserID string `gorm:"index"`
TradeID int
Trade Trade
ExternalID string
Amount float32
Type string
Description string
}
我正在尝试插入一个没有交易的交易:
DB.Create(&Transaction{UserID: "user-1", Type: "unblock", Amount: 50})
这失败了,因为事务结构将键的 int 值默认为 0,因此在数据库级别插入失败,因为我没有 id = 0 的交易。
我该怎么做?
您可以将 TradeID
更改为指针,因此默认值为 nil
。
TradeID *int