我目前正在为我的 Rails 应用程序的管理端使用 Active Admin。我也在使用 Mongoid 连接到 MongoDB。
在这个问题上,我有球队和球员。玩家被分配到一个团队。在我的活动管理表单中,我有:
f.input :team_id, :as => :select, :collection => Team.all,:member_label => (:name), :member_value => :id
问题是团队对象的 id 是 BSON::Object(id) 而不仅仅是 id。Active Admin 不会将该 ID 保存为对象 ID。只要我能按团队拉出球员就可以了。
我正在尝试做
players = Player.where(:team_id => @team.id.to_s)
那是行不通的。
如果 teamA.id = BSON::Object("asdf1234") 和 playerA.team_id = "asdf1234"
我需要以某种方式发出 mongoid 查询以提取具有 team_id="asdf1234" 的玩家