Questo è un seguito fino a Creating "feeds" from multiple, different Rails models. In questa domanda, Tadman suggerisce questo metodo di creazione di un feed utente di elementi recenti da tre modelli (biglietteria, Post, Report):Creazione di un "feed" da più modelli di rotaie, in modo efficiente?
@items = [ Ticket, Post, Report ].inject([ ]) do |a, with_class|
a + with_class.find(:all, :limit => 10, :order => 'created_at DESC')
end.sort_by(&:created_at).reverse[0, 10]
Egli suggerisce questo come un metodo che funziona, ma che non necessariamente essere il più efficiente Suggerisce inoltre che un metodo alternativo sarebbe quello di "creare un indice che abbia un'associazione polimorfica con i vari record".
Sono davvero interessato a saperne di più su questa soluzione alternativa, sembra sia più efficiente che più elegante. Qualcuno può dirmi come si farebbe questo? Usiamo le stesse informazioni di base dell'ultima domanda come base.
questo sembra promettente. Grazie! – jay
Qualche idea su come metterlo in un controller e renderlo in una vista? non sei sicuro di cosa intendi con "allora: includi tutte quelle risorse nel feed"? – Terryfrancis