Mongodb MongooseJS查询选择子文档的属性
给定具有以下模式的模型Mongodb MongooseJS查询选择子文档的属性,mongodb,mongoose,Mongodb,Mongoose,给定具有以下模式的模型foo { a: String, b: [{c: String, d: String}] } 假设a的值是唯一的,并且假设给定foo文档中的c的值是唯一的。如果我有A和C的A和C值,那么A唯一地标识foo文档,而C唯一地标识foo.b子文档。那么,是否有可能伪造一个向我返回d值的查询 在概念上, foo-->(查找({a:a}))-->foo\u文档---(查找({c:c}))-->foo\u子文档-----(选择(d))-->d的值 提供了足够的信息,我
foo
{
a: String,
b: [{c: String, d: String}]
}
假设a
的值是唯一的,并且假设给定foo
文档中的c
的值是唯一的。如果我有A
和C
的A和C值,那么A唯一地标识foo
文档,而C唯一地标识foo.b
子文档。那么,是否有可能伪造一个向我返回d
值的查询
在概念上,
foo-->(查找({a:a}))-->foo\u文档---(查找({c:c}))-->foo\u子文档-----(选择(d))-->d的值
提供了足够的信息,我只是不知道Mongoose是否有这样的机制。您可以使用投影操作符来标识匹配的b
元素,包括:
foo.find({a:a},{b:{$elemMatch:{c:c}}}),函数(err,doc){
//doc.b[0].d包含要查找的d的值。
});