Mongodb的GeoNear In Flask和Mongoengine

时间:2015-07-01 22:25:27

标签: mongodb flask pymongo mongoengine flask-mongoengine

我正在使用烧瓶和mongoengine。如何使用mongodb's geoNear查询?

我正在尝试使用此link

这样使用pymongo
db.command(SON([('geoNear', 'content'), ('near', coordinate)]))

如果我走的是正确的方式。

如何从flask和mongoengine创建pymongo的db对象?

2 个答案:

答案 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})