MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak przekonwertować pymongo.cursor.Cursor na dict?

find metoda zwraca Cursor przykład, który pozwala na iterację wszystkich pasujących dokumentów.

Aby uzyskać pierwszy dokument spełniający podane kryteria, musisz użyć find_one . Wynik find_one jest słownikiem.

Zawsze możesz użyć list konstruktora, aby zwrócić listę wszystkich dokumentów w kolekcji, ale pamiętaj, że załaduje to wszystkie dane z pamięci i może nie być tym, czego chcesz.

Powinieneś to zrobić, jeśli potrzebujesz ponownie użyć kursora i masz dobry powód, aby nie używać rewind()

Demo za pomocą find :

>>> import pymongo
>>> conn = pymongo.MongoClient()
>>> db = conn.test #test is my database
>>> col = db.spam #Here spam is my collection
>>> cur = col.find()  
>>> cur
<pymongo.cursor.Cursor object at 0xb6d447ec>
>>> for doc in cur:
...     print(doc)  # or do something with the document
... 
{'a': 1, '_id': ObjectId('54ff30faadd8f30feb90268f'), 'b': 2}
{'a': 1, 'c': 3, '_id': ObjectId('54ff32a2add8f30feb902690'), 'b': 2}

Demo przy użyciu find_one :

>>> col.find_one()
{'a': 1, '_id': ObjectId('54ff30faadd8f30feb90268f'), 'b': 2}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kopia zapasowa i przywracanie MongoDB za pomocą MongoDump

  2. Muszę pobrać obiekt MongoDB tylko za pomocą filtrowanego elementu tablicy

  3. Implementacja paginacji w mongodb

  4. MongoDB — nieautoryzowany użytkownik administratora

  5. Jak wybrać jedno pole dla wszystkich dokumentów w kolekcji MongoDB?