У меня есть коллекция городов с документами следующей структуры:
city = {
"_id" : ObjectId("5b7b9eac23cad92dbd81f92b"),
"stores" : [
{
"name" : "someName",
"storeId" : "5b9350dc97c35614731e03df"
}
]
}
Как запросить города коллекции по storeId и получить объект city в Mongoose с помощью findOne ()?
Я пробовал следующие способы, но в обоих случаях я получаю «ноль»
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);
});
Но я не знаю, сработает ли это, поскольку мне даже не удалось его запросить ...