class Transaction < ActiveRecord::Base
belongs_to :account, :polymorphic => true
end
class Bankaccount < ActiveRecord::Base
has_many :transactions, :as => :account
end
class Creditcard < ActiveRecord::Base
has_many :transactions, :as => :account
end
Попытка выполнить суммирование транзакций, в которых активна учетная запись.
Transaction.sum(:all, :conditions => "account.status = 'active'", :include => :account)
Итак, после некоторого чтения я наткнулся на это:
Причина заключается в том, что тип родительской модели является значением столбца, поэтому соответствующее имя таблицы не может быть помещено в предложения FROM / JOIN этого запроса.
Название таблицы - банковские счета и кредитные карты, значит ли это, что они должны быть единичными?
Кроме того, account_type - это строка Bankaccount или Creditcard, отражающая модель, но должна ли она быть вместо имени таблицы?