猫鼬 | replaceOne()函数
replaceOne()函数与 update()函数相同,除了 MongoDB 用给定文档替换现有文档(没有像 $set 这样的原子运算符)。
猫鼬模块的安装:
- 您可以访问安装 mongoose 模块的链接。您可以使用此命令安装此软件包。
npm install mongoose
- 安装 mongoose 模块后,您可以使用命令在命令提示符下检查您的 mongoose 版本。
npm version mongoose
- 之后,您可以创建一个文件夹并添加一个文件,例如 index.js。要运行此文件,您需要运行以下命令。
node index.js
文件名:index.js
const mongoose = require('mongoose');
// Database connection
mongoose.connect('mongodb://127.0.0.1:27017/geeksforgeeks', {
useNewUrlParser: true,
useCreateIndex: true,
useUnifiedTopology: true,
useFindAndModify: false
});
// User model
const User = mongoose.model('User', {
name: { type: String },
age: { type: Number }
});
// Find document matching the condition(age >= 5)
// and replace first document with new document
// This function has 4 parameters i.e.
// filter, update, options, callback
User.replaceOne({age: {$gte:5} }, {name:"Anuj"},
null, function (err, docs) {
if (err){
console.log(err)
}
else{
console.log("Original Doc : ", docs);
}
});
运行程序的步骤:
- 项目结构将如下所示:
- 确保您已经使用以下命令安装了 mongoose 模块:
npm install mongoose
- 下面是函数执行前数据库中的示例数据,您可以使用任何 GUI 工具或终端查看数据库,例如我们使用 Robo3T 的 GUI 工具,如下所示:
- 使用以下命令运行 index.js 文件:
node index.js
- 函数执行后,可以看到数据库如下图:
所以这就是你如何使用与 update() 相同的 mongoose replaceOne()函数,除了 MongoDB 用给定的文档替换现有文档(没有像 $set 这样的原子运算符)。