Exception Type: OperationFailure at /
Exception Value: database error: point not in range
我的代码是这样的:
user_center = [ user_utm[1], user_utm[2] ]
user_radius = tools.milesToMeters(request.session['browser_distance'])
results = db.datasets.find({"test_set":"g2", "loc_utm": {"$within": {"$center" : [ user_center, user_radius ] }}});
对于我的 Mongo 查询,我这样做了:
db.datasets.ensureIndex({"loc_utm":"2d"}, {"min":-999999999999, "max":99999999999 } );
我的 user_center 和 user_radius 是这样的,当我打印出来的时候:
[553068.42444848095, 4181244.9741927907]
16093.44
我的 mongo 集合中的所有文档都有一个与 user_center 非常相似的 UTM,因此它应该得到查询。但是,我没有返回文档,而是收到了这个奇怪的错误。
最佳答案
如果您运行 Mongodb 版本 1.4.0/1.5.0,您应该升级到 1.5.2,那里会出现此类问题 has been fixed .
关于python - 为什么我的 Mongo 查询中会出现此错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4572563/