我使用 pymongo 的 mongoClient 连接数据库。我进行了 find() 查询,但无法读取游标内的结果,我不知道为什么。在我从本地数据库进行此查询并且它起作用之前,现在我将所有代码移至 ubuntu 服务器上,并且相同的代码不再起作用。
我尝试了这个,但它在服务器上不起作用。在本地环境下,它可以工作
import json
import requests
from pymongo import MongoClient
client = MongoClient('mongodb://IP_ADDRESS/')
db=client.mydb
mycol = mydb["mycollection"]
array = []
for x in mycol.find():
array.append(x)
print(array)
我也尝试过这个,但响应是一个光标,我不知道如何阅读这个
import json
import requests
from pymongo import MongoClient
client = MongoClient('mongodb://IP_ADDRESS/')
db=client.mydb
mycol = mydb["mycollection"]
x = mycol.find()
print(x)
这是我获得的输出:
<pymongo.cursor.Cursor object at 0x7fa7bd016c10>
我的期望值是这样的:
{ "_id" : ObjectId("5d47f749fa8ca433e0d58b5f"), "value1" : "result1", "value2" : "result2", "value3" : "result3"}
请找到以下源代码示例。
for post in posts.find():
print(post)
您必须按照 MongoDB 文档传递查询和预测:https://www.mongodb.com/docs/manual/reference/method/db.collection.find/
尝试这样:
x = mycol.find(query, {"_id":1, "value1":1, "value2":1,...}) 打印(x)
1 基本上意味着您需要在输出中看到哪个值。 如果你想查看键“value1”的值,则将其设置为“value1”:1。 如果您不想看到键“value1”的值,请将其设置为“value1”:0。