1

ミッションタイトルで大文字と小文字を区別しないモンゴイドクエリを作成したいと思います。

モデルが次のようになっているとしましょう。

class Mission
  include Mongoid::Document

  field :title
  filed :description
end

これはMongoidスコープ/インデックスで達成できますか?それはどのように見えますか?

また、データを非正規化し、インデックス可能な小文字のフィールドを保持することをお勧めしますか?そうであれば、それはどのようになりますか?

どうもありがとうございます。

4

1 に答える 1

2

これがインデックスを作成するフィールドである場合、最善の解決策は、ここで提案されているように、フィールドの小文字/大文字バージョンを保持するフィールドを追加することです。

そうでない場合は、大文字と小文字を区別しない regex でクエリできます。これはパフォーマンスに影響を与えますが、軽視してください。

db.Mission.find({"title" : /foo/i})
于 2012-10-02T02:23:35.277 に答える