Получите все документы коллекции, используя Pymongo
Я хочу написать функцию для возврата всех документов, содержащихся в mycollection
в mongodb
from pymongo import MongoClient
if __name__ == '__main__':
client = MongoClient("localhost", 27017, maxPoolSize=50)
db=client.mydatabase
collection=db['mycollection']
cursor = collection.find({})
for document in cursor:
print(document)
Однако функция возвращает: Process finished with exit code 0
Ответы
Ответ 1
Вот пример кода, который отлично работает при запуске из командной строки.
from pymongo import MongoClient
if __name__ == '__main__':
client = MongoClient("localhost", 27017, maxPoolSize=50)
db = client.localhost
collection = db['chain']
cursor = collection.find({})
for document in cursor:
print(document)
Пожалуйста, проверьте имя коллекции.
Ответ 2
Я думаю, что это будет хорошо работать в вашей программе.
cursor = db.mycollection # choosing the collection you need
for document in cursor.find():
print (document)
Ответ 3
Пимонго создает курсор. Следовательно, вы получите объект "под" курсором. Чтобы получить все объекты, попробуйте:
list(db.collection.find({})
Это заставит курсор перебирать каждый объект и помещать его в список()
Повеселись...