我从最基本的知识和.save函数开始,在这些函数中,我使用模型自动生成唯一的ID和自动生成的时间戳,一切都很好。
然后我试图将整个数组保存到数据库中,这是我最终以无线方式结束的查询
let instagram = new Instagram();
let data = req.body.url.split('\n');
let dataArray = [];
data.forEach(datum => {
split1 = datum.replace('https://www.instagram.com/', '');
split2 = split1.replace('/', '');
time = Date.now;
var datetime = new Date();
dataArray.push({
igurl: datum,
igid: split2,
owner: req.user._id,
cdate: time,
status: "New"
});
});
instagram.collection.insert(dataArray, function(err,docs){
if(err){
req.flash('danger', 'error = ' + err);
res.redirect('/instagram/add');
} else {
req.flash('success', 'IG URL has been added');
res.redirect('/instagram');
}
});
});
问题是使用.collection.insert函数时永远不会生成uid,因为我认为在这种情况下该模型永远不会被调用或被覆盖...
如何通过普通模型路线批量插入,以便可以触发我的模型默认值。