2013-04-24 9 views
10

Typeerror: Objekt vom Typ 'Cursor' hat keine len()Typeerror: Objekt vom Typ 'Cursor' hat keine len()

erhalte ich die oben genannten Fehler, wenn ich versuche

reply = db['test'].find({"date":{"$gt":date_query}} ,{"date":1,"route_id":1,"loc":1,"_id":0}) 

    length = len(reply) 

auszuführen Bitte helfen

+0

Dies ist, weil alles, was Sie getan haben, war, den Cursor zu definieren, der eine Abfrageanforderung für den Server ist - Sie haben tatsächlich eine Reihe von Ergebnissen nicht zurückbekommen (normalerweise würden Sie über einen Cursor iterieren, der Stapel von Dokumenten auf einmal erhält) . –

Antwort

18

EDIT:

gerade bemerkt, dass Sie mongodb in Ihre Tags verwiesen. Ich war verwirrt, weil der Hauptteil Ihrer Frage nicht angibt, welche Datenbank Sie verwenden.

Der Cursor hat eine Methode 'count()', die das zurückgibt, was Sie suchen.

PyMongo Cursor Docs

3

Ja, Zählung die Arbeit für Sie tun.

length = reply.count() 

oder

length = reply.count(with_limit_and_skip=False) 

hatte auch funktionierte nicht viel Coz Länge = count (Antwort) zu leiden. Da ich noch keinen Kommentar abgeben darf, dachte ich, diese Antwort zu verlassen. Hoffe, das wird jemandem helfen, Zeit zu sparen.

Verwandte Themen