我们有node.js项目,并使用mongoose进行mongodb操作。
一个夜间作业运行并在数据库中动态创建一个名为“ zonecountaggregate”的新集合。
当来自UI的数据发生某些更改时,我需要更新此集合。
在定义了模型和架构后,我一直都在工作,只是使用下面的代码引用它来保存或更新数据。
const account = await Account.findById(req.params.id);
....
const updatedAccount = await account.save();
我的问题是,如何更新此动态集合? 我先检查集合是否存在该名称,然后检查是否存在,然后根据ID更新某些字段。
我现在正在执行此操作,但看不到结果返回。
const {
ObjectId
} = require('mongoose').Types;
var mongoose = require('mongoose');
mongoose.connect(process.env.MONGODB_URI);
var connection = mongoose.connection;
var db = mongoose.connection;
mongoose.connect(process.env.MONGODB_URI);
const test = await db.collection('zonecountaggregate').find({_id: ObjectId("5e8ec95181d6ef6f64b69b2c")});
console.log(test)
我们正在使用“猫鼬”:“ ^ 5.7.8”
答案 0 :(得分:0)
这是查找集合后更新猫鼬中任何字段的方式: Model.where({{_id:id})。update({$ set:{title:'words'}})。您必须使用架构设置要更新的字段。欲了解更多信息,请查看官方的猫鼬文档。