【发布时间】:2021-05-29 09:17:21
【问题描述】:
我是 Gorm 的新手。我正在尝试进行级联删除,如果我删除用户,与用户关联的角色(属于)、个人资料(有一个)和书籍(一对多)也将被删除。
我在下面设置了我的模型,但级联似乎不起作用。当我删除我的用户时,角色、个人资料和书籍仍然保留在数据库中,而不是被删除/软删除。
谁能指出我做错了什么?谢谢
用户模型
type User struct {
gorm.Model
Name string `json:"name"`
Age uint `json:"age"`
Profile Profile `gorm:"constraint:OnDelete:CASCADE;"`
RoleID int `json:"role_id"`
Role Role `gorm:"constraint:OnDelete:CASCADE;"`
Books []Book `gorm:"constraint:OnDelete:CASCADE;"`
}
type Book struct {
gorm.Model
Title string `json:"title"`
UserID uint `json:"user_id"`
}
type Profile struct {
gorm.Model
Country string `json:"country"`
UserID uint `json:"user_id"`
}
type Role struct {
ID int
Name string `json:"name"`
}
【问题讨论】:
标签: go-gorm