【发布时间】:2018-11-23 11:29:06
【问题描述】:
根据下面的代码,我希望为 req.body.update 设置一个变量。我不知道如何做到这一点。当我将其设置为 queryz 时,没有任何反应。
我为此使用猫鼬。
app.put('/application/todoupdate/:id/:index', function(req, res, next) {
console.log('accessed put route');
let item = 0;
let queryz = "todos." + item + ".todoText";
console.log(queryz);
User.where({_id: req.params.id}).update({
$set: {
"todos.0.todoText": req.body.update
// queryz: req.body.update
}
}).then(
res.send(req.body.update)
)
});
我的数据库结构是:
{
"_id": {
"$oid": "77777777777"
},
"todos": [
{
"todoText": "req success",
"timestamp": "7777777777777"
},
{
"todoText": "something",
"timestamp": "7777777777777"
}
]
}
我得到的是允许我访问较低级别的:
app.put('/application/todoupdate/:id/:timestamp', function(req, res, next) {
console.log('accessed put route');
User.where({_id: req.params.id, "todos.timestamp":
req.params.timestamp}).update({
$set: {
"todos.$.todoText": req.body.update
}
}).then(
res.send(req.body.update)
)
});
【问题讨论】:
标签: javascript node.js mongodb mongoose