在mongoose中的Update上添加动态字段

时间:2015-12-26 08:05:53

标签: mongodb mongoose

来自mongoose doc

var thingSchema = new Schema({..}, { strict: false });
var thing = new Thing({ iAmNotInTheSchema: true });
thing.save(); // iAmNotInTheSchema is now saved to the db!!

它也说

  

注意:在您的实例中不存在的实例上设置的任何键/值   无论架构选项如何,都始终忽略架构。

我的问题是为什么会这样?

如果我想对此进行更新并希望在Schema中添加更多字段,有什么办法可以做到这一点。

1 个答案:

答案 0 :(得分:3)

执行update时,您可以使用{strict: false}选项允许更新修改模式中未定义的字段:

Thing.update({_id: 1}, {$set: {iAmNotInTheSchema: true}}, {strict: false}, cb);