![](/img/trans.png)
[英]how can I parse an array of objects in my node.js and mongodb query?
[英]how do I translate my query to use with mongodb in Node.js
这是我的mongo查询的样子
db.test.findOne({"User.David":{$elemMatch:{"action":"todo","status":"Done"}}})
我正在node.js api中实现此功能,用户可以在其中基于用户名和状态检索文档
下面是我尝试过的。
var query = {};
var value = `User.${userName}`;
query[value] = `{$elemMatch:{"action":"todo","status":"${status}"}}`
db.collection(test).findOne(query).then((result)=>{
}
问题是查询看起来像
db.test.findOne({'User.David':'{$elemMatch:{"action":"todo","status":"Done"}}'})
引号在这里是个问题。
您不应该在整个查询值表达式周围使用字符串模板,因为那样会产生字符串。 相反,只需像这样构造查询:
query[value] = { $elemMatch: { action: "todo", status } }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.