Mongoid casesensitive查询

时间:2012-10-02 01:33:17

标签: ruby-on-rails-3 mongodb indexing mongoid denormalization

我想对任务标题进行不区分大小写的mongoid查询。

让我们说模型看起来像:

class Mission
  include Mongoid::Document

  field :title
  filed :description
end

这可以通过mongoid范围/索引完成,它会是什么样子?

此外,更好的做法是对数据进行非规范化并保留一个可索引的小写字段,如果是这样,那会是什么样的?

非常感谢。

1 个答案:

答案 0 :(得分:2)

如果这是一个字段,您将索引最佳解决方案是添加一个附加字段,其中包含您建议的{/ 3}}字段的大写/小写版本。

如果没有,您可以here。这会产生性能影响,但是会轻微地发生。

db.Mission.find({"title" : /foo/i})