MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

O resultado da consulta do modelo Rails Mongoid retorna informações incorretas de tamanho/comprimento/contagem, mesmo ao usar limite


Do manual fino :

Mas .limit realmente não altera o seletor de consulta, pois não altera o que a consulta corresponde , .offset e .limit alterar qual segmento das correspondências é retornado . Isso não corresponde ao comportamento do ActiveRecord e a documentação não é exatamente explícita sobre esse ponto sutil. No entanto, o comportamento do Mongoid corresponde ao que o shell do MongoDB faz:
> db.things.find().limit(2).count()
23

Minhas things coleção contém 23 documentos e você pode ver que o count ignora o limit .

Se você quiser saber quantos resultados são retornados então você pode to_a isso primeiro:
recipes.to_a.length