哈希字段上的 Mongoid 查询

Mongoid query on hash fields

我有一个带有 mongoid5 的 rails 应用程序。 在我的 Project 模型中有一个这样的属性:

permissions : {
 "18748343" : 2,
 "23453744" : 3,
 "23453444" : 1
}

和这样的数组

role_ids = ["123456", "23453744"]

我想查询将 role_ids 成员之一作为其 permissions 属性中的键且该键的值大于 1 的项目。 我如何使用 mongoid 标准进行查询?

如果您正在使用 Mongoid::Attributes::Dynamic,mongoid5 将允许您这样查询:

Project.where('permissions.123456'.ne => nil)

这是因为在mongo中,权限是文档,带有密钥