更新存储id的Mongodb中的子文档

时间:2014-02-01 19:41:15

标签: mongodb nosql

我正在开发一个应用程序,我们决定用Mongodb实现数据库,所以我真的很陌生。在数据库中,每个公司都有一个集合,我们需要将公司每个产品类别的ID存储在公司集合的子文档中。假设我们需要将以下Object插入集合中:

{ 
  name : "comapnyX"
  address : {
     "street" : "main street",
     "ZipCode" : "12345" 
  },
  categories : [
     { "name" : "category1" },  
     { name" : "category2" } 
  ] 
}   

如果稍后我们决定更新类别,我们需要在此子文档中再添加一个类别,我该如何创建该更新?

如果从Mongodb的Datamodeling角度来看这不是一个好习惯,也请告诉我

1 个答案:

答案 0 :(得分:2)

您可以使用 $ push 操作符添加更新方法添加新类别:

db.collection.update( <query>,
                      { $push: { categories: {name: "category3" } }
                   )

$ push上的MongoDB文档:http://docs.mongodb.org/manual/reference/operator/update/push/