У меня есть запрос, который должен сделать следующее: Возьмите два набора координат и верните места, расположенные рядом с любой из координат.Mongoosejs: using query.or() с геопространственным запросом
Я работаю над Node.js с Mongoose.js.
Исходный код запроса ниже (прежде чем я попытался с помощью query.or()
синтаксис:
query.or([{geoNear: "loc", near: start, spherical: true},{geoNear: "loc", near: end}]);
Проблема, кажется, использует $or
, потому что я сначала попробовал код как:
that.count({
_cat: _cat ,
$or: [
{
loc: { $nearSphere: start }
},
{
loc: { $nearSphere: end }
}
]}, function(err, c) {
// do something
});
When Я ищу в одном месте без $or
(т.е. start
или end
) Я могу получить результаты. Вот как я уверен, что проблема связана с $or
.
Поддерживает ли поддержка mongoDB/mongoose с помощью $or
с геопространственным поиском, или я делаю что-то неправильно?
Вы когда-нибудь находили решение для одного гео-поиска с несколькими необязательными местоположениями? Я столкнулся с подобной проблемой. –
Я честно не помню, что я делал. Я посмотрел на свою кодовую базу и не видел следа '$ или', поэтому я определенно нашел работу как-то. Mongo 206 теперь поддерживает использование $ или $ с данными геолокации –