我收集了以下结构的文件:
city = {
"_id" : ObjectId("5b7b9eac23cad92dbd81f92b"),
"stores" : [
{
"name" : "someName",
"storeId" : "5b9350dc97c35614731e03df"
}
]
}
如何按storeId查询收集城市,并使用findOne()获取Mongoose中的城市对象?
我尝试了以下方法,但在这两种方法中我都得到了“null”
query = {
'stores.storeId' : someId
}
query = {
'stores': {'$elemMatch': {'storeId': someId}}
}
Cities.findOne(query)
.then( city => {
console.log('city: '+ city);
});
然后我试着只说出名字。
我考虑过使用:
options = {
select: { 'stores.$.name': 1 }
}
Cities.findOne(query, {}, options)
.then( name => {
console.log('name: '+ name);
});
但我不知道它是否有效,因为我甚至还没有成功地查询它。。。