現在、Rails アプリの管理側に Active Admin を使用しています。また、MongoDB への接続に Mongoid を使用しています。
この号では、チームと選手がいます。プレイヤーはチームに割り当てられます。私のアクティブな管理フォームには、次のものがあります。
f.input :team_id, :as => :select, :collection => Team.all,:member_label => (:name), :member_value => :id
問題は、チーム オブジェクトの ID が単なる ID ではなく BSON::Object(id) であることです。Active Admin は ID をオブジェクト ID として保存しません。チームごとに選手を引き出せればこれでいい。
私はやろうとしています
players = Player.where(:team_id => @team.id.to_s)
そしてそれはうまくいきません。
teamA.id = BSON::Object("asdf1234") かつ playerA.team_id = "asdf1234" の場合
team_id="asdf1234" を持つプレイヤーを引き出すには、どうにかしてモンゴイド クエリを発行する必要があります。