0
私は以下のフィールドを持つ場所のためのコレクションを持っている:
{
"name":"AAAAA",
.
.
"location" : {
"loc" : {
"type" : "Point",
"coordinates" : [
25.381911,
37.109551
]
}
.
.
}
}
私はgeoNearで集約を使用したいと私は場所のフィールドを設定する方法を見つけることができません。このようなクエリの場合:
db.places.aggregate([
{
$geoNear: {
near: { type: "Point", coordinates: [ -73.99279 , 40.719296 ] },
distanceField: "dist",
maxDistance: 2,
query: {
"categories.categoryList":"Cocktail Bar"
},
includeLocs: "location.loc",
num: 5,
spherical: true
}
}]);私は、問題は「LOC」フィールドは、ロケーション文書に埋め込まれていると私は近い「location.loc」を検索するモンゴを「伝える」ことができないということだと思います
"errmsg" : "exception: geoNear command failed: { ok: 0.0, errmsg: \"no geo indices for geoNear\" }"
:
は、私はこのエラーを取得します。