Diamo alcune nozioni di base su come funziona pymongo.
Supponiamo che tu abbia una raccolta in Mongo con dati inseriti. Vuoi ottenere i dati da quella raccolta eseguendo query:
cursor = db.model.find({'time': {'$gte': start, '$lt': end}})
Metodo di ricerca di "modello" l'oggetto della raccolta restituisce Cursor
oggetto:un'entità che contiene tutte le informazioni sulla query e sui risultati della query.
Quindi la query viene eseguita e il passaggio successivo è ottenere risultati. I tipi di risultato delle query Mongo possono variare da metodo a metodo. Nel nostro caso (find
metodo) - il risultato è un gruppo di oggetti JSON (oggetto iteratore), ognuno di essi è rappresentato da dict
digita in linguaggio Python. Significa che non devi analizzare i risultati:sono già analizzati in dict .
Un'altra cosa su Cursor
:è pigro. Significa che ricevi risultati su richiesta. In caso di Cursor
oggetto, è necessario scorrere di esso per ottenere l'oggetto recuperato con query:
for result_object in cursor:
print result_object # result_object is a dict that holds JSON object
result_object['_id'] # Mongo ObjectId of the result_object
# result_object["<field_name>"] # Value stored in a field named <fieldname>
In genere, devi provare a leggere Pymongo Tutorial :è piuttosto breve e fornisce indicazioni su come funziona l'intero driver.