gpt4 book ai didi

ruby-on-rails - rails : When to use many to many assocations?

转载 作者:数据小太阳 更新时间:2023-10-29 08:52:05 25 4
gpt4 key购买 nike

我已经使用 Rails 将近一年了,我一直处于不确定何时使用多对多关联的情况。这是我目前的情况。

我有一个球员赛季运动

player.rb

has_many :seasons, :dependent => :destroy

season.rb

belongs_to :player
has_many :sports, :dependent => :destroy

运动.rb

belongs_to :season

player has_many :seasons 和 season 属于玩家。然后我有属于 season 和 seasons has_many 的运动:运动。

我希望玩家添加一个新赛季(例如 2011-2012、2012-2013、2014-2015 等),然后在创建赛季后我希望玩家添加他们的运动项目目前正在玩那个赛季。在这一点上我很困惑,因为我现在这样做的方式迫使我像这样使用 3 层深的嵌套资源

routes.rb

resources players do 
resources :seasons do
resources :sports
end
end

如果我要使用 3 级深层嵌套资源,我将不得不将玩家添加到我的仅接受 2 个选项的表单中。

_form.html.erb

<%= form_for([@season, @sport]) do |f| %>

我应该为此使用多对多关联还是应该如何处理?

最佳答案

也许这会帮助您解决一些多对多的问题:

Many-to-Many

有了你的路线,你可能不必将你的路线嵌套得那么深......分离可能是一种更好的方法。(由你决定你想要的路线)

我看到一些多对多关系正在形成。一名运动员可以参加多种运动,而一项特定的运动可以有很多运动员。一个赛季可以有很多不同的运动,一个运动可以有多个赛季。

一旦你弄清楚了你的模型,如果你想要一个操作两个不同模型的表单,你应该研究 nested_forms

Nested_forms

希望这会帮助您开始/为您解决一些问题!

我也构建了一个运动应用程序(篮球),并遇到了一些多对多关系和嵌套形式的问题 here .也许您可以在此过程中将其用作引用/指南

关于ruby-on-rails - rails : When to use many to many assocations?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10308909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com