Ruby on rails 引用其他模型中的其他数据

Ruby on rails 引用其他模型中的其他数据,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我需要从其他模型中提取数据方面的帮助,以及Rails中的正确引用帮助。例如,我有一个Rails应用程序,其中保存了比赛信息。在这里,我有汽车、汽车级别、赛事和赛车。我有它,我可以创造一辆车,这是一个汽车类的一部分,但我不知道我会如何做的事件和赛车的一部分。我希望这一切都是有意义的,因为我自己仍在努力想办法解决这个问题。我使用的是Rails版本4.1.6 如果有人能为这个问题想出一个更好的标题,我将不胜感激 汽车类别: 这是汽车所属的类别。所有的汽车都必须在同一个等级。这应该包含所有关于汽车等级的

我需要从其他模型中提取数据方面的帮助,以及Rails中的正确引用帮助。例如,我有一个Rails应用程序,其中保存了比赛信息。在这里,我有汽车、汽车级别、赛事和赛车。我有它,我可以创造一辆车,这是一个汽车类的一部分,但我不知道我会如何做的事件和赛车的一部分。我希望这一切都是有意义的,因为我自己仍在努力想办法解决这个问题。我使用的是Rails版本
4.1.6

如果有人能为这个问题想出一个更好的标题,我将不胜感激

汽车类别: 这是汽车所属的类别。所有的汽车都必须在同一个等级。这应该包含所有关于汽车等级的信息

型号:

class CarClass < ActiveRecord::Base
  has_many :cars
end
class Car < ActiveRecord::Base
      belongs_to :car_class
 end

事件: 赛事是一个汽车级别的比赛。它将保存事件详细信息,但是等级和车辆详细信息将由上文提到的
CarClass
car
保存。应该有可能得到一份活动所有汽车的清单。我假设
事件
将有许多
比赛


赛车
这应该包含每辆车的比赛数据。例如,他们来的地方、赛道时间等。我假设
赛车
将属于
事件
这是一个非常经典的
经历了很多次:
情况。这是两个模型之间的多对多关系,中间模型充当联接表。在这里为连接表使用单独的模型将允许您存储比赛的附加数据,而不仅仅是车辆和事件之间的连接

您可以执行以下操作:

class Racing < AR::Base
  belongs_to :car
  belongs_to :event
end

class Event < AR::Base
  has_many :racings
  has_many :cars, through: :racings
end

class Car < AR::Base
  has_many :racings
  has_many :events, through: :racings

  belongs_to :car_class 
end

class CarClass < AR::Base
  has_many :cars
end

当你在关联中循环时,别忘了在适当的地方使用
includes

汽车类赛车中
,并将它们放在该事件下。现在我只能为@cars想出一个
。每个
都做,然后循环遍历该类中的所有车,并以某种方式逐个添加。但这对我来说似乎不正确。这似乎是另一个问题…让我知道我是否应该创建一个。是的,这可能是一个单独的问题。创建事件时,只需执行
event.cars即可
Event.first.cars.first.car_class