我对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
但是,如果我希望我的飞行课程与机场班级相关两次,一次是原始机场,另一次是目的地机场,我该怎么做?
另外,我如何在机场方面建立关系?...
对此的任何建议都将非常感激。
答案 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中有一个例子。