我正在使用烧瓶和mongoengine。如何使用mongodb's geoNear查询?
我正在尝试使用此link:
这样使用pymongodb.command(SON([('geoNear', 'content'), ('near', coordinate)]))
如果我走的是正确的方式。
如何从flask和mongoengine创建pymongo的db对象?
答案 0 :(得分:1)
阅读mongoengine的源代码
connection.py中的get_db返回我需要的db对象
def get_db(alias=DEFAULT_CONNECTION_NAME, reconnect=False):
所以我可以像这样在mongoengine中运行geoNear:
from mongoengine.connection import get_db
get_db().command(SON([('geoNear', 'content'), ('near', coordinate)]))
答案 1 :(得分:0)
MongoEngine 0.8引入Geo queries。
你应该可以这样做:
content.objects(point__near=coordinate)
content.objects(point__near={"type": "Point", "coordinates": coordinate})