Flask-PyMongo 查询数据库

Flask-PyMongo query DB

我有一个带有抓取数据的远程 MongoDB,我想通过 Flask 中的网页显示这些数据,但它似乎 运行 有问题。我可以毫无问题地添加到数据库中,但是显示来自数据库的数据似乎是一项不可能完成的任务。反复研究后不知所措。一个常见的错误是 'Cursor' object is not callable

代码:

from flask import Flask, render_template
from flask_pymongo import PyMongo

app = Flask(__name__)
app.config["MONGO_URI"] = 'mongodb+srv://example:example@cluster0-zh34t.mongodb.net/test?retryWrites=true'
mongo = PyMongo(app)


@app.route("/")
def index():
    doc = mongo.db.collection.find_one({"_id": 0})
    return doc

Cursor 不是这里的真正问题。使用 find_one 而不是 find 将 MongoDB 传递到字典中,然后您可以按预期使用该字典。我的问题现已解决,是由于指定了 MONGO_URI。由于 flask_pymongo 如何根据 URI 自动识别您的数据库,我有 "Test" 而不是我的实际数据库。 "Test" 不存在,尽管 MongoDB Atlas 提供了路径,所以我 运行 陷入各种问题。如果您遇到此类问题,请务必仔细检查您的 URI。