,因为findOneAndUpdate函数是用于更新文档的,而不是用于保存新的文档。在Mongoose中,可以使用Model的create方法来保存新的文档到MongoDB。
Model.create方法是Mongoose中用于创建新文档的静态方法之一。它接受一个包含文档数据的对象作为参数,并将该对象保存到对应的集合中。create方法会返回一个Promise对象,可以通过.then()来处理保存成功的情况,或者通过.catch()来处理保存失败的情况。
下面是一个示例代码,展示如何使用Mongoose的create方法保存数据到MongoDB:
const mongoose = require('mongoose');
// 定义文档的Schema
const userSchema = new mongoose.Schema({
name: String,
age: Number,
});
// 创建Model
const UserModel = mongoose.model('User', userSchema);
// 创建新的文档并保存
const user = {
name: '张三',
age: 25,
};
UserModel.create(user)
.then((savedUser) => {
console.log('保存成功:', savedUser);
})
.catch((error) => {
console.error('保存失败:', error);
});
以上代码中,首先通过mongoose.Schema定义了一个用户文档的Schema,包含了name和age字段。然后使用mongoose.model创建了名为User的Model。
接下来,我们准备了一个包含name和age的对象user。然后调用UserModel.create方法,并将user作为参数传入。在.then()回调中,可以处理保存成功的情况,打印出保存成功的文档对象。在.catch()回调中,可以处理保存失败的情况,并打印出错误信息。
推荐的腾讯云相关产品:腾讯云数据库 MongoDB
腾讯云数据库 MongoDB是基于MongoDB分布式存储架构和TDSQL协议,提供高可用、自动扩容、可自动备份与恢复的托管型数据库服务。它提供了高性能、高可用的数据库存储,并支持水平扩展和自动备份。腾讯云数据库 MongoDB适用于大数据存储、数据分析、内容管理、社交应用、物联网和游戏等多种场景。
更多详情,请访问腾讯云数据库 MongoDB产品介绍页:腾讯云数据库 MongoDB
请注意,本答案中没有提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的云计算品牌商。
领取专属 10元无门槛券
手把手带您无忧上云