0
我有一個Node.js測試,其中有多個對象模擬從地圖中的某個點移開,並且數值測試是否在內從這一點來看,這是一個輻射。 每個對象都對應於嵌套舊式2d索引'location.loc'
的模型。
我已經使用這個查詢
var center={_lat:20,lng:-100};
var area = {
center: [center._lng,center._lat],
radius: 100,//This are supossed to be meters
unique: true,
spherical: true }
MyModel.where('location.loc')
.within()
.circle(area)
.exec(function (err, records) {
if (err) {
throw err;
}
//Log Length of records
});
而且
MyModel.find({
"location.loc": {
$near: [center._lng,center._lat],
$maxDistance: 1 //This is suposed to be a mile
}
}).exec(function(err, documents) {
if (err) {
throw err;
}
//Log documents length
});
但是這兩個腳本返回我的文檔TE整個集合,甚至當他們英里從點之遙。 同時我在我的Mongo客戶端使用$ near,$ geoWithin和這些查詢爲我提供了正確的答案。
我的Mongoose腳本有什麼問題?
對於這種情況,應該只使用within()。circle()嗎?