首页 > 解决方案 > Pymongo 查询返回 0 个结果,尽管数据正在收集中

问题描述

我的 pymongo 数据库在我正在查询的集合中有数据,但是当我运行查询时它返回 0 个结果。

在下面的代码中,count 给了我 9 个结果,但返回到邀请的光标中有 0 个项目。

@app.route("/myinvites", methods=["GET"])
@login_required
def myinvites():
    myid = current_user.get_id()
    invites = db.invite.find({"user_id":ObjectId(myid)})
    count = db.invite.find({"user_id":ObjectId(myid)}).count()
    print(count)
    print(invites.retrieved)
    return render_template("myinvites.html", myinvites = invites)

输出如下:

9 0

我无法弄清楚发生了什么,这似乎很奇怪,因为我在其他视图中使用相同类型的查询并且它正在工作。

标签: flaskpymongo

解决方案


如果你只想要计数,你可以使用

count = db.invite.count_documents({"user_id":ObjectId(myid)})

它的效率更高一些。


推荐阅读