使用mongoose添加模式中不存在的字段

10 浏览
0 Comments

使用mongoose添加模式中不存在的字段

我正在尝试向文档中添加一个新字段,但是这并不起作用:

创建我的UserModel原型:

model = require("../models/user")
UserModel.prototype.findOneAndUpdate = function(query, params, cb) {
    model.findOneAndUpdate(query, params, { returnNewDocument: true, new: true }, function(err, data) {
        if (!err) {
            cb(false, data);
        } else {
            cb(err, false);
        }
    });
};

然后调用它:

userFunc = require("../../model_functions/user")
userFunc.findOneAndUpdate({
    "email.value": userEmail
}, {
    $set: {"wat":"tf"}
},
function (err, updatedUser) {
    //这会成功更新任何已存在的字段,但不会添加任何新字段。
        console.log(updatedUser);
                  ...
});

只要字段存在,这可以成功更新任何字段,但不会添加新字段。

0