如果我有几个ID,请说[1,2,3]
是否可以在Mongoid中一次查询所有内容?如:
User.where({ id: [1,2,3]})
或类似的东西?
答案 0 :(得分:6)
您正在寻找的基础MongoDB查询将使用$in
operator:
$ in 运算符选择字段值等于指定数组中任何值的文档。
在MongoDB中,你会说:
db.users.find({ id: { $in: [1,2,3] } })
直接转换为Mongoid:
User.where(id: { :$in => [1,2,3] })
Mongoid将大多数(全部?)查询运算符修补到Symbol
,所以你通常会说:
User.where(:id.in => [1,2,3])
答案 1 :(得分:4)
派对迟到了,但你可以将一系列ID传递给find()方法。
User.find(ids)