如何在mongoid中使用或条件进行查询
如何在Mongoid中使用或条件进行查询。
这是mongoid中“ OR ”查询的解决方案。
如果你想要查询如下
select * from user where id = 10 or name = 'hitesh';
在带有mongoid的rails中你必须写这样的查询
User.any_of({id: 10},{name: 'hitesh'}).first
这也有效:
User.or({id: 10},{name: 'hitesh'})
@Simone Carletti是对的,但你也可以使用“mongo-style”表示法:
# Ruby 1.9+ Person.where(last_name: {"$in" => ["Penn", "Teller"]}) #Ruby 1.9- Person.where(:las_name => {"$in" => ["Penn", "Teller"]})
或简单地说
Person.where(:last_name.in => ["Penn", "Teller"])
UPD
两个领域的条件?
Person.where(:last_name.in => ["Penn", "Teller"], :first_name.in => ["Pedro", "Julio"])