我正在尝试使用Deployd运行地理空间设置。
在得到这样的东西时
/beam?{"loc": {"$near": [51,-114], "$limit": 10}}我得到一个错误
{
"message": "can't find special index: 2d for: { loc: { $near: [ 51, -114 ], $limit: 10 } }",
"status": 400
}阿费克我得把这个foo.ensureIndex({loc:"2d", affiliation:1})放在某个地方。
但是在哪里呢?我可以在哪里分配显式索引?
发布于 2013-10-08 22:43:59
这个问题已经提了一年多了,但是,对于那些仍然在弄清楚这个问题的人来说,请执行以下操作:
集合/资源= beam
属性/字段=位置
在mongodb shell中的属性上创建一个地理索引-
db.*beam*.ensureIndex( { *location* : “2dsphere” } )在location字段中添加一些地理数据-
{"type": "Point", "coordinates": [ -105, 39 ] }查询它-
/resource_name?{"location":{"$near":{"$maxDistance":100000,"$geometry":{"type":"Point","coordinates":[-105,39]}}}}发布于 2012-11-19 19:19:13
当前版本的部署0.6.9似乎不支持从仪表板创建索引,你必须使用shell在mongodb上连接,或者如果你使用mongodb提供商,比如mongohq,你可以在mongohq仪表板上创建空间索引。
https://stackoverflow.com/questions/12889187
复制相似问题