2010-12-11 6 views

Antwort

17

Wenn Sie results_count möchten Ihre ignorieren limit():

results = db.datasets.find({"test_set":"abc"}).sort("abc",pymongo.DESCENDING).skip((page-1)*num).limit(num) 
results_count = results.count() 

for post in results: 

Wenn Sie wollen, dass die results_count an Ihrem limit() gekappt werden, set applySkipLimit to True:

results = db.datasets.find({"test_set":"abc"}).sort("abc",pymongo.DESCENDING).skip((page-1)*num).limit(num) 
results_count = results.count(True) 

for post in results: 
+0

@Jake übereinstimmen: Was schlagen Sie stattdessen? – thirtydot

+1

results_count = results.count (True) http://docs.mongodb.org/manual/reference/method/cursor.count/ Ich glaube, ich habe Ihren Beitrag falsch gelesen. Ich hielt an der ersten for-Schleife an. Ich sehe jetzt, dass du das erwähnt hast. Tut mir leid, dass ich am Sitz meiner Hose geflogen bin. – Jake

8

nicht sicher, warum Sie die Zählung, wenn Sie wollen überschreiten bereits Limit 'num'. Wie auch immer, wenn Sie behaupten wollen, hier ist, was Sie tun sollten.

results = db.datasets.find({"test_set":"abc"}).sort("abc",pymongo.DESCENDING).skip((page-1)*num).limit(num) 

results_count = results.count(True) 

Das results_count mit num