【问题标题】:Mongoid 6.3 where in query not workingMongoid 6.3 在哪里查询不起作用
【发布时间】:2018-05-30 15:39:42
【问题描述】:
带有 MongoDB 的 Rails 应用程序。
Rails 版本 5.1.6 和 mongoid 版本 6.3.0。
以下查询似乎不起作用:
User.where(:role.in => ['admin', 'supervisor']).count
上面的查询返回0。但是下面的查询
User.where(:role.in => 'supervisor')
返回适当的结果。
我做错了吗?
【问题讨论】:
标签:
mongodb
ruby-on-rails-5.1
mongoid6
【解决方案1】:
Rails 5 和 Mongoid 6.3:
User.in(role: ['admin', 'supervisor']).count # recommended
OR
User.any_of(:role.in => ['admin', 'supervisor']).count
Rails 4 和 Mongoid 5.1:
User.where(:role.in => ['admin', 'supervisor']).count
OR
User.in(role: ['admin', 'supervisor']).count