私はモンゴイドのドキュメントを読みましたが、埋め込まれたドキュメントを正しくインデックス化する方法を正しく理解しているとは確信が持てません。この小さなコード スニペットを見て、正しい方向に進んでいるかどうかお知らせください。
基準
temp = Array.new
temp.push(BSON::ObjectId("some_bson_objecId"))
temp.push(BSON::ObjectId("some_other_bson_objecId"))
Game.any_of({'players.user_id' => @user.id},{:_id => temp})
ゲームモデル
embeds_many :players
index(
[
[ "players.user_id" ],
[ "players.user_name" ]
],
unique: true
)
プレイヤーモデル
embedded_in :game
field :user_id, :type => BSON::ObjectId
field :user_name, :type => String, :default => ""
index(
[
[ :user_id ],
[ :user_name ]
],
unique: true
)