与同一物体轨道的多个关系

时间:2011-11-13 11:44:35

标签: ruby-on-rails activerecord relationship

我对rails非常陌生,所以请原谅我有限的知识。

如果我想为飞行员创建一个Web应用程序来记录航班,我可能会有以下型号......

class Flight < ActiveRecord::Base
    belongs_to :plane
    belongs_to :pilot
end

class Plane < ActiveRecord::Base
    has_many :flights
end

class Pilot < ActiveRecord::Base
    has_many :flights
end

但是,如果我希望我的飞行课程与机场班级相关两次,一次是原始机场,另一次是目的地机场,我该怎么做?

另外,我如何在机场方面建立关系?...

对此的任何建议都将非常感激。

1 个答案:

答案 0 :(得分:5)

您必须设置class_name和foreign_key选项。你可以尝试类似的东西:

belongs_to :origin_airport, :class_name => "Airport", :foreign_key => "origin_airport_id"
belongs_to :destination_airport, :class_name => "Airport", :foreign_key => "destination_airport_id"

显然,命名取决于你。 docs中有一个例子。