【发布时间】:2019-03-06 01:40:16
【问题描述】:
我有一个小型应用程序,它在我的数据库中创建和删除“监视器”。在我可以关闭节点应用程序并走开并在 1 天后返回并且数据将丢失之前,我知道删除路由不会导致这种情况。它只发生在这个单一的监视器数据库上。我在 MongoDB 服务器上还有另外 3 个,另外 3 个没有数据丢失。
为此,我的代码非常简单,我有一个 post 路由将 Blow 代码作为中间件/控制器运行,就是这样。只需退出路线并等待另一条路线。
exports.newPost = function(req, res, next) {
let name = req.body.name;
if (!name) return res.status(400).json({success: false, message: 'You must fill in all required fields.'});
let newMonitor = { name };
Monitor.create(newMonitor, (err, monitor) => {
if (err) return res.status(500).json({success: false, message: 'Error saving new monitor.'});
return res.status(200).json({success: true, message: 'Successfully saved new monitor.'});
});
};
现在这会将文档保存到 mongo 数据库中,我可以通过使用 mongo CLI 工具看到它。下面是上面代码中调用的模型。
var mongoose = require('mongoose');
const monitorSchema = new mongoose.Schema({
name: {
type: String,
required: true
},
createdAt: { type: Date, required: true, default: Date.now }
});
module.exports = mongoose.model('Monitor', monitorSchema);
是否有人对可能发生的事情有任何建议或想法?我完全被这件事难住了。
【问题讨论】: