我尝试写一个查询 $ near 。对于此查询,我必须创建索引,但出现错误检测到循环依赖性。这是我的代码:
定义模型
var answers = new Schema({
countdown: String,
location: Object,
}, {
collection: 'test'
});
var Model = mongoose.model('Model', answers);
构建并调用查询
Model.collection.createIndex({ "point": "2dsphere" });
//query = { location : { $near : [ -120.24, 39.21 ], $maxDistance: 0.10 } }
query = {
location: {
$near: {
$geometry: {
coordinates: [-120.24, 39.20 ]
},
$maxDistance: 1000
}
}
}
}
Model.find(query, function ...)
您能帮我解决吗?..
答案 0 :(得分:0)
您可以使用 MONGO SHELL 创建索引。使用连接字符串登录,然后选择您的 DB 和 Collection 并运行
db.collection_name.createIndex({"field_name": "indexing value"})
这应该可以解决问题。
答案 1 :(得分:0)
button
字段必须是数字数组,在您的情况下,它是字符串数组。您应该将字段类型更改为location.coordinates
。