📅  最后修改于: 2023-12-03 15:17:42.681000             🧑  作者: Mango
deleteMany()
函数是Mongoose中的一个方法,可用于MongoDB数据库中删除满足指定条件的文档。它的语法如下:
Model.deleteMany(conditions, callback)
参数解释:
conditions
: 指定用于匹配文档的条件。callback
: 回调函数,用于在操作完成后执行回调。如果不需要回调,可以省略。示例代码:
const User = mongoose.model('User', {
username: String,
password: String
})
User.deleteMany({ username: 'John' }, function(err) {
if (err) {
console.error(err)
} else {
console.log('Deleted all users with username "John"')
}
})
上面的代码将会删除所有用户名为'John'的用户。如果操作成功,将输出'Deleted all users with username "John"'。
deleteMany()
还可以返回Promise对象,可以用async/await语法处理Promise。示例如下:
async function deleteUser(username) {
try {
const result = await User.deleteMany({ username: username })
console.log(`Deleted ${result.n} users with username "${username}"`)
} catch (err) {
console.error(err)
}
}
deleteUser('Jane')
上述代码将删除所有用户名为'Jane'的用户,并输出"Deleted x users with username 'Jane'"的消息,其中x表示被删除的文档数。
总之,deleteMany()
是Mongoose中一个非常有用的方法,可以帮助我们轻松地删除MongoDB数据库中满足指定条件的文档。