有一个通过联想
has_one :through
关联与另一个模型建立 one-to-one
连接。该关联表明通过继续第三模型,可以将声明模型与另一模型的一个实例匹配。
例如,如果每个 supplier
都有一个 account
,并且每个帐户都与一个帐户历史记录相关联,那么供应商模型可能如下所示:
class Supplier < ApplicationRecord
has_one :account
has_one :account_history, through: :account
end
class Account < ApplicationRecord
belongs_to :supplier
has_one :account_history
end
class AccountHistory < ApplicationRecord
belongs_to :account
end