有没有办法在保存对象时自动删除关联?
像这样的东西:
type Parent struct {
gorm.Model
Name string
Children []*Child
}
type Child struct {
gorm.Model
Name string
ParentID uint
}
func myFunc(db *gorm.DB) {
p := &Parent{Name: "foo", Children:[]*Child{ {Name:"Bar"}, {Name:"Foobar"}}}
db.Save(&p)
p.Children = p.Children[1:]
db.Save(&p) // both children still exist in the database. i'd like the first child to be deleted here
}
`
我发现了db.Model(&Parent).Association(“Children”) . Clear()的一些技巧,但只是将ParentID值设置为NULL,而不是删除记录 . 有一个简单的方法吗?
提前谢谢了 :)
1 回答
我想你只是简单地使用物理批量删除,如下面的代码:
希望这有帮助 .