我有两个模型,Accounts 和 CreditRecords。一个帐户可以有许多属于它的信用记录。但是,账户也可以将信用记录交易到其他账户,我想跟踪当前账户所有者是谁,以及原始所有者是谁。
class Account < ActiveRecord::Base
has_many :credit_records
class CreditRecord < ActiveRecord::Base
belongs_to :original_owner_id, :class_name => "Account"
belongs_to :account_id, :class_name => "Account"
当我尝试将 CreditRecord.account_id 设置为 1 时,它会正常更新。但是,如果我尝试将 CreditRecord.original_owner_id 设置为 3,则会收到此错误:
ActiveRecord::AssociationTypeMismatch: Account(#70154465182260) expected, got Fixnum(#70154423875840)
account_id 和 original_owner_id 都设置为整数。