2015-02-10 129 views

回答

5

你要找的根本MongoDB的查询将使用$in operator

$在操作者选择其中一个字段的值等于指定数组中的任意值的文件。

在MongoDB中,你会说:

db.users.find({ id: { $in: [1,2,3] } }) 

这直接转化为Mongoid为:

User.where(id: { :$in => [1,2,3] }) 

Mongoid补丁最多(?所有)查询经营者的进入Symbol所以你'd通常会说:

User.where(:id.in => [1,2,3]) 
4

Bi晚到晚会,但你可以传递一个ID数组到find()方法。

User.find(ids) 
+0

'User.find(ids)'将返回一个普通的Ruby数组。如果你想对结果进行批量数据库操作,例如,最好使用'User.where(:id.in => [1,2,3])''。 – ph0rque 2017-11-21 22:38:57