答案 0 :(得分:0)
如果没有更多细节,我可以从代码中理解这一点:
您正在实例化客户端:
client = pymongo.MongoClient(url)
我认为这是有效的,给出了第二个截图。
您将获得一个可供您的客户使用的数据库:
db = client["fullstack"]
这可能是一个潜在的问题。你确定你有“fullstack”数据库吗?也许它被称为“fullStack”或类似的?
默认情况下,如果您没有“fullstack”数据库,mongo将为您“创建”它(这可能不是正确的术语。它基本上就像在mongo shell中执行use fullstack
一样。如果您没有“fullstack”数据库,它将工作,您将能够与它进行交互,但如果您不对此数据库执行任何操作,则一旦断开连接,它将消失。)
您正在尝试访问某个集合。
collection = db["students"]
同样,与db相同的问题。确保它是“学生”而不是“学生”或类似的东西。另外,请确保您确实在那里有记录。
我会建议做类似的事情:
collection.insert_one({'test': 'record'})
这是为了确保你确实在那里有东西。
您可以通过执行以下操作删除它:
collection.remove({'test': 'record'})
此外,迭代游标会消耗光标。由于您没有数百万条记录,因此可以执行以下操作:
records = [record for record in collection.find({})]
这会将您在内存中的所有记录保存在列表中,您可以重复使用。
希望这有帮助!