MongoDB:$根据variables的内容推入数组

我试图$push项目到MongoDBbuild立在Node上的logging(使用MongoJS ),如下所示:

 exports.saveToUser = function (req, res) { console.log("IN"); var user = req.params.user; var param = req.params.param; // equals "foo" var value = req.params.value; // equals "bar" console.log("Saving Data to User"); console.log(util.inspect(param, false, null)); db.users.update({"_id": ObjectId(user)}, {$push: {param:value}}, function (err, record) { if (err) { console.log("Lookup Error: " + err); } else{ console.log("Updated " + user + " with " + param); } }); }; 

这个工作,除了function推“param:酒吧”而不是“foo:酒吧”我的logging(见上面的意见是什么引用)。

我尝试了$push: {eval(param):value} ,这在黑暗中是一个镜头,但是不pipe用。 什么是最好的方式来做到这一点?

 var ob = {}; ob[param] = value; db.users.update({"_id": ObjectId(user)}, { $push: ob }, function (err, record) { // etc.. });