如何在mongoose中的变量键中推送数组的所有元素

时间:2016-03-14 05:40:40

标签: node.js mongodb mongoose

我想在mongodb中推送数组的所有值。 当我尝试推送单个值时,以下代码正在运行。

var query = {};
query["username"] = "abc";
query["movie._id"] = new ObjectId("56e62ebc56c69a6716cdc305");

var datatopush = "this is a photo";

var event = {};
event["movie.$.photo"] = datatopush;

UserEventsDetails.findOneAndUpdate(
 query,{
    "$push": event
}
,function(err,user){
   if(!err) res.send("done");
   else res.send(err);
});
});

但是如果datatopush = [" a"," b"]; 如何在mongodb中推动所有这些价值。 如何在这种情况下使用$ each。

1 个答案:

答案 0 :(得分:0)

然后像这样使用$each

event["movie.$.photo"] = { "$each": datatopush };

这构成了上下文:

{ "$push": { "movie.$.photo": { "$each": datatopush } } }