📜  mongoose |删除()函数(1)

📅  最后修改于: 2023-12-03 15:32:57.643000             🧑  作者: Mango

Mongoose | 删除()函数

Mongoose 是一个用于在 Node.js 环境下操作 MongoDB 数据库的对象模型工具,提供了一系列便捷的 API。其中,删除()函数用于从 MongoDB 数据库中删除符合条件的文档。

使用示例
const mongoose = require('mongoose');
const { Schema } = mongoose;

// 连接数据库
mongoose.connect('mongodb://localhost/test');

// 定义模型
const userSchema = new Schema({
  name: String,
  age: Number,
  sex: String
});

// 创建模型
const User = mongoose.model('User', userSchema);

// 删除所有年龄小于 20 的用户
User.deleteMany({ age: { $lt: 20 } }, (err, result) => {
  if (err) {
    console.error(err);
  } else {
    console.log(result.deletedCount);
  }
});

在上面的示例中,我们首先通过 connect() 方法连接到本地的 MongoDB 数据库。接着,定义了一个用户模型,其中包括姓名、年龄和性别三个字段。通过 model() 方法创建了 User 模型,相当于在 MongoDB 中创建了一个名为 users 的集合。

然后,我们使用 deleteMany() 函数删除所有年龄小于 20 的用户。deleteMany() 函数的参数有两个,第一个参数是一个条件对象,用于指定要删除的文档的条件。在本例中,我们使用 { age: { $lt: 20 } } 表示删除所有年龄小于 20 的用户。第二个参数是一个回调函数,用于处理删除结果。在回调函数中,可以获取到被删除的文档数量,以及详细的错误信息。

参数说明

deleteMany() 函数的参数如下:

  • conditions:要删除的文档的条件,可以是一个普通对象,也可以是一个 Mongoose Query 对象。
  • callback:删除操作完成后的回调函数。如果删除操作执行成功,回调函数的第二个参数 result 将包含删除成功的文档数量。
返回值

deleteMany() 函数没有直接返回值,而是通过回调函数的参数来传递结果。

总结

删除()函数是 Mongoose 操作 MongoDB 数据库时的一个重要函数,用于删除符合条件的文档。在使用时,需要指定要删除的文档的条件,并在回调函数中处理删除结果。