这是我的代码:
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);
});
});
当它运行时,Mongoose 认为“参数”就是我的 shcema 字段的名称,而实际上我希望将值存储在变量“参数”中。我怎样才能做到这一点?谢谢
最佳答案
如果您想在对象中使用动态键,则必须首先创建该对象,并使用括号表示法
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);
});
});
关于javascript - 如何将变量传递给 Mongoose "findByIdAndUpdate",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38623521/