【问题标题】:Update Mongo array: remove dynamic key更新 Mongodb 数组:删除动态键
【发布时间】:2015-02-01 08:28:57
【问题描述】:

蒙古新手。我正在尝试根据作为 ObjectID 的键删除标签:

{
  "_id": ObjectId("53ccff9bbb25567911f208a8"),

  "tags": {
    "53ccff9bbb25567911f208a4": "tag1",
    "53ccff9bbb25567911f208a5": "tag2",
    "53ccff9bbb25567911f208a6": "tag3"
  }
}

我想我知道如何在 javascript 中从数组中删除它并更新文档,但我试图在查询中执行此操作。

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    您正在寻找$unset

    collection.update(
        {"_id": ObjectId("53ccff9bbb25567911f208a8")},
        {"$unset": {"tags.53ccff9bbb25567911f208a6": ""}}
    )
    

    这将从tags 中删除"53ccff9bbb25567911f208a6": "tag3" 条目。

    更多信息http://docs.mongodb.org/manual/reference/operator/update/unset/#up._S_unset

    【讨论】:

    • 我遇到的问题是添加 ObjectID: {"$unset": {"tags."+tag: ""}} 似乎不起作用。
    • @Stephane 如果没有看到您的实际代码,我们将无法进一步帮助您。
    猜你喜欢
    • 2017-09-09
    • 2017-08-22
    • 2015-05-21
    • 1970-01-01
    • 1970-01-01
    • 2020-02-24
    • 1970-01-01
    • 2021-04-03
    • 2014-08-26
    相关资源
    最近更新 更多