bien, así que esto es parte de lo que hace irritante MongoId para los recién llegados. La gente espera que métodos como User.all realmente devuelvan una matriz cuando realmente solo devuelve el objeto Criteria.
Con el fin de proporcionar el azúcar sintético de métodos encadenables y otros mecanismos de consulta sofisticados, Mongoid parece utilizar una cosa de tipo de carga perezosa.
Usted puede hacer:
#array index
User.all[0]
#first/last
User.all.first
#each over things, print out all the users
User.all.each {|u| p u}
#edit, I forgot to include this, which is probably what you really want
#this spits out an array
User.all.to_a
Esto hace que sea difícil verificar rápidamente que las cosas están funcionando para los recién llegados de ActiveRecord donde User.all sólo devuelve una matriz.
Definitivamente. Aunque tienen documentación, no parece sugerir que los punteros en realidad hayan creado objetos de criterio sobre los que deba iterar. Como dijiste, un poco irritante para los recién llegados que usaban las clases AR. – Hutch
¿Qué sucede si obtiene un error de conexión al usar '.to_a'? – Gcap