Nodejs中的MongoDB(mongoose) - 保存动作很奇怪

时间:2016-03-12 11:07:40

标签: node.js mongodb mongoose

我在nodejs中的路由器中使用它来保存在html上发布的值。

router.post('/', function(req,res,next) {
    User.findOne({ '_id': req.user._id }, function (err, doc){
        console.log(doc);
        if(err) {  console.log(err);
         res.json({success: false, msg: 'Error: database error.'}); };

            doc.profile.name = req.body.value;
            doc.save();
        console.log(doc);

        return res.json({success: true});
    });

});

当我在保存后输出文档时,它完美地运行但在我刷新或查看数据库本身之后它根本没有修改。

它曾经工作过。我看到了什么,我不知道为什么,如果我使用doc.save(),那么再次doc.save()两次它可以工作并最终更新数据。

有人可以解释会发生什么吗?

1 个答案:

答案 0 :(得分:0)

因此,对于无法调试问题的人,您可以使用。

.save(function (err,obj){
 console.log(err);
});

对我来说这是我的数据库结构的问题,因为我添加了一些枚举,我有空字段,因此导致了问题。