我在 Rails 3.0 上,并试图弄清楚什么是正确的方法来设置一个 belongs_to :through 关系(我知道这是不可能的)。这是一个例子:
class ParentCompany < ActiveRecord::Base
has_many :subsidiaries
has_many :employees, :through => :subsidiaries
end
class Subsidiary < ActiveRecord::Base
belongs_to :parent_company
has_many :employees
end
class Employee < ActiveRecord::Base
belongs_to :subsidiary
belongs_to :parent_company, :through :subsidiary # <-- I know this is invalid
end
我知道我可以通过以下方式解决它:
class Employee < ActiveRecord::Base
def parent_company
subsidiary.parent_company
end
end
但是,我想知道我是否可以通过关联进行上述操作。