是否有推荐的方法使用 django nonrel 对 mongodb 进行自定义查询?
我已经建立了一个完整的网站并运行良好,现在我只是添加一些地理空间索引和查询,并想知道对于地理空间查询是否已经有支持,或者是否有最佳实践方法来使用定制的询问?
我找到了这个问题的答案,如果有更好的答案,请告诉我。
如此处所述将您的对象分配给 MongoDB 管理器 -http://django-mongodb-engine.github.com/mongodb-engine/cool-stuff.html#included-mongodb-batteries http://django-mongodb-engine.github.com/mongodb-engine/cool-stuff.html#included-mongodb-batteries
from django_mongodb_engine.contrib import MongoDBManager
class MyModel(models.Model):
objects = MongoDBManager()
然后你可以像这样进行原始查询:
MyModel.objects.raw_query({'loc' : {'$near' : [50,50]}})
我想另一种方法是直接进入 pymongo:http://api.mongodb.org/python/1.10%2B/examples/geo.html http://api.mongodb.org/python/1.10%2B/examples/geo.html
最后我得到了这个查询:
nearest = MyModel.objects.raw_query(
{'loc' : {
'$within' :{ #within .05 degrees of lat/lon
'$center' : [{'long' : long,'lat' : lat}, .05]
}
})[:10] #get up to 10 results
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)