2016-07-27 114 views
0

这里是我的代码:如何通过可变进猫鼬“findByIdAndUpdate”

app.post('/api/scheduleObject_Update', function(req, res) { 



    var parameter = req.param('param'); 
    var value = req.param('newvalue'); 
    var ID = "579918b5c25d87df3e3e69b6"; 
    console.log(parameter); 


    Schedules.findByIdAndUpdate(ID, { parameter : value }, function(err, sched) { 
     if (err) throw err; 
     console.log(sched); 
    }); 


}); 

当运行猫鼬认为“参数”是什么时,在现实中我想存储在值我shcema领域被称为变量“参数”。我怎样才能做到这一点?由于

回答

3

如果你想在一个对象动态密钥,您必须首先创建一个对象,并用括号标记

app.post('/api/scheduleObject_Update', function(req, res) { 

    var parameter = req.param('param'); 
    var value = req.param('newvalue'); 
    var ID = "579918b5c25d87df3e3e69b6"; 

    var obj = {};   // create object 
    obj[parameter] = value; // set value 

    Schedules.findByIdAndUpdate(ID, obj, function(err, sched) { 
     if (err) throw err; 
     console.log(sched); 
    }); 
}); 
+0

OP你真的应该听这个家伙。凭借197K的声誉,他真的知道他的狗屎。他的答案也是正确的。 :d – CENT1PEDE