我已经使用 Rails 将近一年了,我一直处于不确定何时使用多对多关联的情况。这是我目前的情况。
我有球员、赛季和运动。
播放器.rb
has_many :seasons, :dependent => :destroy
季节.rb
belongs_to :player
has_many :sports, :dependent => :destroy
运动.rb
belongs_to :season
玩家has_many : seasons 和 season 属于玩家。然后我有属于季节和季节的运动 has_many :sports。
我希望玩家添加一个新赛季(例如 2011-2012、2012-2013、2014-2015 等),然后在赛季创建后我希望玩家添加他们目前正在玩的运动季节。在这一点上我很困惑,因为我现在这样做的方式迫使我使用像这样的 3 级深度的嵌套资源
路线.rb
resources players do
resources :seasons do
resources :sports
end
end
如果我要使用 3 级深层嵌套资源,我将不得不将玩家添加到我的表单中,它只接受 2 个选项。
_form.html.erb
<%= form_for([@season, @sport]) do |f| %>
我会为此使用多对多关联还是应该如何处理?