mongoid 埋め込みドキュメント
概要
いくつかの埋め込みドキュメントがあります。会社→スタンド→商品。ドキュメント製品にはフィールド「タグ」があります。このリクエストは非常にうまく実行できます: Company.where(“stands.products.tags” => “books”)。ただし、たとえば Company.where(“stands.products.tags” => “books”).where(“stands.products.tags” => “toys”) のように、2 つのタグ名で検索したいと考えています。ただし、この例では、mongo は「おもちゃのタグ」のみを見つけます。 1 回のリクエストでより多くのタグを見つけるにはどうすればよいですか?
解決策
タグ属性を文字列の配列にリファクタリングし、インデックスを付けてから、この便利なメソッドを参照することをお勧めします。
Company.any_in("stands.products.tags" => ["books", "toys"])