当前位置: 首页 > 知识库问答 >
问题:

Mongoose-在一个函数调用中删除多个文档

孔俊友
2023-03-14

在文档中有deleteMany()方法

Character.deleteMany({ name: /Stark/, age: { $gte: 18 } }, function (err) {});

我想删除具有一个公共属性而另一个属性不同的多个文档。大概是这样的:

Site.delete许多({userUID: uid, id:[10, 2, 3, 5]},函数(err){}

这个的正确语法是什么?

共有3个答案

韦欣德
2023-03-14

我必须将id更改为\u id,它才能工作:

js prettyprint-override">Site.deleteMany({ _id: [1, 2, 3] });

如果未定义id,而是使用默认id,则会发生这种情况:

“如果没有将一个_id字段传递到架构构造函数中,则默认情况下,Mongoose会为每个架构分配一个_id字段。”Mongoose docs

娄建义
2023-03-14

您也可以使用。

Site.remove({ userUID: uid, id: { $in: [10, 2, 3, 5]}}, function(err, response) {});
阎德业
2023-03-14

我相信您正在寻找的是$in操作员:

Site.deleteMany({ userUID: uid, id: { $in: [10, 2, 3, 5]}}, function(err) {})

这里的文档:https://docs.mongodb.com/manual/reference/operator/query/in/

 类似资料:
  • 问题定义 我在使用BeautifulSoup模块(bs4)时遇到一些问题。我需要解析一些CSS类的(findAll())字符串,并使用get_text()函数对它们进行解包(或者可以说从soup中移除所有标记),但有一些误解。我想做一碗汤 和soup显示指定url的html代码。 稍后我想把数据变量转换成,这是我想要访问的数据,并且只显示。类型后来,我的IDE说您不能使用 就这样。因为soup实例

  • 问题内容: 我有一个特殊情况,我们的收藏需要根据电子邮件地址和swepstakes_id的组合来确保每个文档都是唯一的。我已经看了很多遍,但是我找不到如何完成这种验证的方法。 模式定义: 问题答案: 您可以使用包含两个字段的唯一索引来强制执行该操作:

  • 问题内容: 我想调用一个在second.js文件的first.js文件中定义的函数。这两个文件都在HTML文件中定义,例如: 我想打电话给在定义中。根据我的搜索结果,答案是首先定义是否可以,但是根据我的测试,我没有找到任何方法。 这是我的代码: 问题答案: 除非在同一文件中定义了该函数,或者在尝试调用该函数之前已加载了该函数,否则无法调用该函数。 除非函数的范围与尝试调用该函数的范围相同或更大,否

  • 问题内容: 我有以下代码: 调用webDataUrl和graphicDataUrl JSON并使用它们的数据以便在两个不同的div(#viewG和#viewW)中显示它们的最佳方法是什么? 问题答案: 最好的方法是单独执行每个操作,并处理错误情况: 这样就可以并行执行请求,并在每个请求完成后尽快更新页面。 如果您想并行运行请求,但是 等到 两个 页面 都 完成 后再等待 更新页面,可以使用以下方法

  • 问题内容: 这是面试中提出的问题。如果一个类在Java中何时有多个构造函数,我们可以从另一个构造函数调用另一个函数吗? 问题答案: 可以,我知道的语法是 您还可以通过以下方式调用超类的构造函数 这两个调用只能作为构造函数中的第一条语句完成(因此,您只能在执行其他任何操作之前调用另一个构造函数)。