Pymongo kullanarak burada belirtilen temel 2dsphere dizin işlemini 2dsphere yapmak için bir komut dosyası hazırlamaya çalışıyorum.Pymongo'da çalışan bir 2dsphere indeksi örneği var mı?
Ben bunu anlamaya herhangi bir örnek bulamadık, bunun şimdiye kadar benim girişimi:
from pymongo import GEOSPHERE
client=MongoClient('localhost',27017)
db=client['dbtest']
points=db['points']
points.create_index([("loc",GEOSPHERE)])
points.insert({"loc":[2 5]})
points.insert({"loc":[30,5]})
more points.insert
for doc in points.find({"loc" : {"$near": { "$geometry" : {"type":"Point","coordinates":[1,2]},"$maxDistance":20}}}):
print doc
O pymongo.errors.OperationFailure: database error: can't find special index: 2d for: { loc: { $near: { $geometry: { type: "Point", coordinates: [ 1, 2 ] }, $maxDistance: 20 } } }
Denemeniz benim makinem üzerinde çalışıyor, ancak maxDistance'ı çok büyük bir sayıya ayarladım. Hangi MongoDB sürümünü kullanıyorsunuz? MongoDB 2.4.3 kullanıyorum. – vinipsmaker