Aus dem feines Handbuch :
Aber .limit ändert den Abfrageselektor nicht wirklich, da er nicht ändert, was die Abfrage übereinstimmt , .offset und .limit ändern, welches Segment der Treffer zurückgegeben wird . Dies entspricht nicht dem Verhalten von ActiveRecord und die Dokumentation ist zu diesem subtilen Punkt nicht gerade explizit. Das Verhalten von Mongoid stimmt jedoch mit dem überein, was die MongoDB-Shell tut:
> db.things.find().limit(2).count()
23
Meine things Sammlung enthält 23 Dokumente und Sie können sehen, dass die count ignoriert das limit .
Wenn Sie wissen möchten, wie viele Ergebnisse zurückgegeben werden dann könnten Sie to_a es zuerst:
recipes.to_a.length