我想做一个多级数组元素删除。我的结构如下: -
type Company struct {
Id bson.ObjectId `bson:"_id,omitempty"`
CompanyName string
Process []ProcessItem
}
type ProcessItem struct{
SortOrder int
Documents []DocumentTemplate
}
type DocumentTemplate struct {
Id bson.ObjectId `bson:"_id,omitempty"`
TemplateName string
}
我想删除 DocumentTemplate 类型的对象。DocumentTemplate 是 ProcessItem 中的结构数组,它是 Company 结构中的结构数组。我有公司 ID(结构公司的字段)和模板名称(结构 DocumentTemplate 的字段)。
我尝试了下面的 mgo pull 查询,但它不起作用。
c := db.C("company")
pullQuery := bson.M{"process": bson.M{"documents.templatename": "xyz"}}
err := c.Update(bson.M{"_id": "123"}, bson.M{"$pull": pullQuery})
请指出我在这里犯的错误。谢谢。
慕哥9229398
SMILET
相关分类