我非常想使用这里讨论的mongo geoNear命令.
这是我在rails控制台中输入的命令,附带错误消息.
MongoMapper.database.command({ 'geoNear' => "trips", 'near' => [45,45]}) Mongo::OperationFailure: Database command 'geoNear' failed: (errmsg: 'more than 1 geo indexes :('; ok: '0.0').
我无法理解错误信息,据说不可能有超过1个地理索引,我确信我只创建了一个.
根据这个stackoverflow问题,我相信我正确地写了查询.有谁知道这个错误信息?我将如何破坏和重新创建索引?
我使用rails 3.1与mongodb v2.0和mongo ruby gem v1.5.1.
我真的很快就问过这个问题,也许我应该删除它?事实上,实际上有太多的地理索引,因为删除索引并重新创建它可以解决问题.
MongoMapper.database.collection('trips').drop_indexes Trip.ensure_index [[:route, '2d']]