我在为关系创建外键约束时遇到问题。Belongs to包含外键的结构:type Summary struct { Id string `gorm:"primaryKey"` OwnerId *string `gorm:"foreignKey:OwnerId references:Id;not null"` Title string}摘要所属的结构:type Owner struct { Id string `gorm:"primaryKey"` Name string}它可以毫无问题地在 SQL 中创建表,但 SQL 架构在列上的摘要表中不包含外键约束,因此当所有者不存在时,可以插入摘要。owner_id
2 回答
POPMUISE
TA贡献1765条经验 获得超5个赞
你用的是什么版本的 gorm?如果您位于库的 v1 上,请尝试切换到 v2。我在使用库的 v1 时遇到了类似的问题。
v1 依赖项下载
go get -u github.com/jinzhu/gorm
v2 依赖项下载
go get -u gorm.io/gorm
幕布斯6054654
TA贡献1876条经验 获得超7个赞
在我看来,最终奏效但不是完美的解决方案是引用内部的结构,如下所示:OwnerSummary
type Summary struct {
Id string `gorm:"primaryKey"`
OwnerId string
Owner Owner `gorm:"foreignKey:OwnerId"`
Title string
}
我想知道这是否是唯一的方法
- 2 回答
- 0 关注
- 101 浏览
添加回答
举报
0/150
提交
取消