如何在节点Mongodb中按ID删除Json对象?

伊帕利波威特

我有一个名为“ EVENTS”的Mongodb集合,并且在集合中有一个数组对象,如下所示:

{
   "Events":[
      {
         "_id":"53ae59883d0e63aa77f7b5b2",
         "Title":"Title Blank",
         "Desc":"Description Blank",
         "Date":"2014-06-04 00:30",
         "Link":"http://googleparty.com",
         "Event":"Victoria Centre",
         "dateCreated":"28/6/2014  06:58"
      },
      {
         "_id":"53ae59883d0e63aa77f7b5b3",
         "Title":"Hello World",
         "Desc":"hello",
         "Date":"2014-06-04 00:30",
         "Link":"http://linkedinparty.com",
         "Event":"social",
         "dateCreated":"30/2/2014  11:10"
      }
   ]
}

我将如何在node.js中通过ID删除对象,因此“ delete(53ae59883d0e63aa77f7b5b2)”将产生以下内容:

{
       "Events":[
           {
         "_id":"53ae59883d0e63aa77f7b5b3",
         "Title":"Hello World",
         "Desc":"hello",
         "Date":"2014-06-04 00:30",
         "Link":"http://linkedinparty.com",
         "Event":"social",
         "dateCreated":"30/2/2014  11:10"
          }
       ]
    }

问候

尼尔·伦恩

如果您真正想做的只是“清空”数组,则只需将$set运算符与.update()“和”设置为空数组一起使用:

db.collection.update({},{ "$set": { "Events": [] } },{ "mutli": true})

因此,该.update()操作将使用“查询”来选择集合中的文档,如图所示的空白查询会选择所有内容。“更新”部分包含$set仅用空数组替换当前“事件”字段操作。

此处的“ multi”选项可确保将其应用于所有匹配的文档。默认值为,false并且只会更新匹配的第一个文档。

有关删除选定数组元素的更具体的操作,请查看$pull运算符。您的编辑现在显示这是您要执行的操作:

db.collection.update(
    { "Events._id": ObjectId("53ae59883d0e63aa77f7b5b2") },
    { "$pull": { "Events": { "_id": ObjectId("53ae59883d0e63aa77f7b5b2") } } }
)

但是,包含_id字段的数组似乎表明您使用的是猫鼬,因此ObjectId值会自动进行强制转换:

Model.update(
    { "Events._id": "53ae59883d0e63aa77f7b5b2" },
    { "$pull": { "Events": { "_id": "53ae59883d0e63aa77f7b5b2" } } },
    function(err,numAffected) {

    }
);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在XML中按ID获取节点?

来自分类Dev

如何在XML中按ID获取节点?

来自分类Dev

如何在mongoDB中删除对象内部的对象?蟒蛇

来自分类Dev

如何在Flask-SQLAlchemy中按ID删除记录

来自分类Dev

如何在 JSON 中为每个对象添加根节点?

来自分类Dev

如何在Golang和MongoDB中按ID查找

来自分类Dev

如何在JavaScript中按ID合并多个对象数组?

来自分类Dev

如何在JavaScript中按ID合并多个对象数组?

来自分类Dev

在JSON树中按ID查找节点

来自分类Dev

如何在Angular中删除JSON对象内的对象?

来自分类Dev

mongodb 节点 - 按 json 对象数组查找文档

来自分类Dev

如何在android中的json对象中删除斜线?

来自分类Dev

按值从JSON对象中删除元素

来自分类Dev

如何在Swift中从JSON对象删除属性(key:values)

来自分类Dev

如何按值从列表中删除对象

来自分类Dev

如何在方案中从图中删除节点?

来自分类Dev

如何在Networkx中删除节点的轮廓

来自分类Dev

如何在Haxe中删除Xml节点

来自分类Dev

如何在JTree中准确删除节点?

来自分类Dev

如何在firebase android中删除节点

来自分类Dev

在JPA中按对象的ID和版本删除对象

来自分类Dev

在Javascript中按Id过滤json对象

来自分类Dev

如何从json中删除对象

来自分类Dev

如何在MongoDB中删除或删除集合?

来自分类Dev

从mongodb中的json删除空对象

来自分类Dev

如何在jstree中删除选定节点的子节点?

来自分类Dev

如何在R中删除节点子节点

来自分类Dev

如何在Java中获取JSON对象的ID

来自分类Dev

如何在Java中获取JSON对象的ID