gpt4 book ai didi

mongodb - InsertMany 在 mongodb 中不起作用

转载 作者:可可西里 更新时间:2023-11-01 10:39:00 26 4
gpt4 key购买 nike

我对 Mongoose 和 MongoDB 本身还很陌生,我正在尝试保存一堆通过 insertMany 方法插入的文档,但它并没有保存文档。

这是我的代码:

型号:

var mongoose = require('mongoose');
var Schema = mongoose.Schema;


var hostSchema = new Schema({
hostname: String,
timestamp: Number,

});

var hostModel = mongoose.model('host', hostSchema, 'host');

module.exports = hostModel;

ExpressJS 邮政路线

var mongoose = require('mongoose');
var hostModel = require('../../models/Host');

router.post('/host', function (req, res, next) {
var payload = req.body;

(async function(){
var host = new hostModel();

const insertMany = await hostModel.insertMany(payload.data);

console.log(JSON.stringify(insertMany,'','\t'));

const saveMany = await hostModel.save();

res.status(200).send('Ok');
})();
});

console.log 向我显示了记录,但是当我执行 hostModel.save() 时,我得到 hostModel.save is not a function .

如何保存插入的文档?

非常感谢您的帮助!

最佳答案

这里不需要创建实例new hostModel()...直接使用hostModel也不需要save()因为 insert many 本身会创建集合...并确保 payload.data 具有对象数组

router.post('/host', function (req, res, next) {
const array = [{hostname: 'hostname', timestamp: 'timestamp'},
{hostname: 'hostname', timestamp: 'timestamp'}]

var payload = req.body;

(async function(){

const insertMany = await hostModel.insertMany(array);

console.log(JSON.stringify(insertMany,'','\t'));

res.status(200).send('Ok');
})();
});

关于mongodb - InsertMany 在 mongodb 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50599199/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com