我是mongodb和mongoid的新手。我习惯于Rails的Ruby ActiveRecord/mysql,所以请原谅我的无知。使用mongoid中的条件选择多个文档
在ActiveRecord的世界,如果我要搜索符合特定标准 (学生从一个特定的邮政编码)的所有记录,我可以用
students = Student.where(zipcode: "12345")
,这将返回学生的数组。
使用Mongoid,如果我查询
Student.all.where(zipcode: "12345")
它只是返回一个标准,我必须使用迭代器像
students = []
Student.all.where(zipcode: "12345").each { |s| students << s }
有没有更好的方式做一个Mongoid /蒙戈查询获取所有文件 满足搜索条件,而无需使用ruby迭代器(.each)?
我已经从 https://docs.mongodb.org/ecosystem/tutorial/mongoid-queries/
指mongoid文件,找不到这个例子中的所有文件在一个查询。
非常感谢解释 - 现在有道理。也只是了解到Student.where(...)返回一个条件,并且不会执行查询,直到它被分配给一个变量或迭代结束。 – Kannan