Mongoose $ push不会插入数组

这是我的mongoose模式

var userSchema = new mongoose.Schema({ referral:[{ id:{type: String}, name:{type: String} }], code:{type:String} }); 

然后我尝试做这样的事情

 User.findOneAndUpdate({code:'123'}, {$push:{'referral':{'id':'49385986','name':'myname'}}}, function(err, result) { console.log(err); console.log(result); }); 

我可以看到结果,但是当我检查我的数据库,它没有更新/插入。

 Try This: User.findOneAndUpdate( {code:'123' }, { $push: { referral: { $each: [ { id: "5", name:"abc" }, { id: "6", name: "xyz" }, { id: "7", name:"pqr" } ] } } },function(err,data){ if(data){ console.log(data); } else{ console.log(err); } }); );