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
Tentativo di eseguire una sommatoria delle transazioni in cui è attivo l'account.ActiveRecord :: EagerLoadPolymorphicError: impossibile caricare l'associazione polimorfica
Transaction.sum(:all, :conditions => "account.status = 'active'", :include => :account)
Così, dopo qualche lettura mi sono imbattuto in questo: La ragione è che il tipo di modello di genitore è un valore di colonna per cui il suo corrispondente nome della tabella non può essere messo in FROM/JOIN clausole di quella query. Il nome della tabella è conti bancari e carte di credito quindi vuol dire che dovrebbero essere singolari? Anche l'account_type è una stringa o Bankaccount o Creditcard per riflettere il modello, ma dovrebbe invece essere il tablename?
Grazie per aver risposto alla mia domanda e alla fine è andato lo stesso percorso. Grazie ancora Pan: D – bordicon
Spot on. Guarda anche questa risposta per aderire ai modelli polimorfici: http://stackoverflow.com/a/22995162/293280 –