我在我正在编写的应用程序中对我的数据库有一个“树状”结构,以便:
training has_many class_times
和
class_time has_many reservations
有没有办法在特定培训下查找所有预订?当然,我可以遍历所有课堂时间/添加外键,但出于某种原因,我脑子里有一个小小的声音,说我可能不需要外键。
答案 0 :(得分:4)
class Training < ActiveRecord::Base
has_many :class_times
has_many :reservations, :through => :class_times
end
class ClassTime < ActiveRecord::Base
has_many :reservations
end
然后你可以这样做:
training = Training.find(:first)
training.reservations