您好,我对快速路线不太了解,因为我是 mongodb 后端的新手。
在下面的 route ,我通过将架构值重置为 true 来验证电子邮件。现在我想将新架构详细信息复制到另一个现有集合。我怎样才能做到这一点?
router.get('/:adminId/verifyAdmin',function(req,res){
console.log('request recieved');
Admin.findOne( {_id: req.params.adminId })
.exec()
.then(admin => {
const Thing = mongoose.model(admin.companyName);
const emailTokenn = req.query.id;
//console.log(emailTokenn);
Thing.updateOne( { emailResetTokenn: emailTokenn },{ $set: { verified: true }},(err) =>{
if(!err){
return res.redirect('https://localhost:3000/fw18/index.html');
}
else{
throw err;
}
});
});
});
在这里,我想将Thing
集合详细信息传递/复制/保存到我的数据库中的现有集合名称users
。
编辑:-尝试过此操作,但导出错误:- const User = mongoose.model('User');
Thing.updateOne( { emailResetTokenn: emailTokenn },{ $set: { verified: true }},(err) =>{
if(!err){
//add Thing Schema to Users collection
Thing = mongoose.model(admin);
var copy = mongoose.model('admin', admin,'User');
admin.save(function(err){});
return res.redirect('https://s3.ap-south-1.amazonaws.com/fw18/index.html');
}
错误:-
MissingSchemaError:尚未为模型注册架构
纠正我。
最佳答案
Http 是一种无状态协议(protocol)。要维护应用程序的状态,您可以使用
1) session
2) cookie 和
3) 查询字符串。
根据您的情况,您可以使用 session 来处理。 将信息存储到 session 中并从不同的路由获取存储的信息。
关于node.js - 如何从路由函数将模式数据保存到另一个集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55999858/