2015-02-10 41 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