arrays - 使用 mgo.v2 将新对象插入到 mongodb 文档中的数组属性中

标签 arrays json mongodb go mgo

我正在使用 mgo.v2 mongodb 驱动程序来使用 mongodb 操作数据。我的数据结构如下 json

  "configs": [
        {
          "configid":1,
          "id": 0,
          "widgets": [
            {
              "position": 1,
              "type": 1,
              "class": "normal green",
              "metricid": 5
            },
            {
              "position": 2,
              "type": 1,
              "class": "normal blue",
              "metricid": 6
            }
         ]
      }
    ]

我已经使用上面的 json 结构创建了 configs 集合。

err2 := session.DB("db").C("configs").Insert(&config)

但是。在我的例子中,我想将新项目添加到 widgets 数组到这个 configid。它是这样的对象,

    {
      "position": 3,
      "type": 1,
      "class": "normal red",
      "metricid": 7
    }

将此对象添加到 mongodb 中特定 configid 的 widgets 数组中的最佳方法是什么?我正在使用 mgo.v2 mongodb 驱动程序

最佳答案

您可以使用更新方法使用 $push 添加数组元素 运算符。例如:

session.DB("db").C("configs").Update(
    bson.M{"configid": 1}, 
    bson.M{"$push": bson.M{"widgets": widget}}
)

关于arrays - 使用 mgo.v2 将新对象插入到 mongodb 文档中的数组属性中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39878774/

相关文章:

arrays - 如何进行数组模式匹配

javascript - 尝试测试数组中是否存在某个项目并更新数组

java - for循环遍历不同的数组/Java

Java:获取两个数组,如果其中一个的长度小于另一个的长度,则将缺失值替换为1

javascript - JSON 架构 : "allof" with "additionalProperties"

Python 转储 "\n"而不是 json 文件中的换行符

javascript - 我如何使用带有 Javascript 的 Rest API 插入到 MongoDB?

javascript - 在集合的键中查找最大数据长度

javascript - 如何从 json 重建表?

node.js - 如何在node js中获取表单数据并查询mongodb