Mysql
 sql >> Database >  >> RDS >> Mysql

Creare un feed da più modelli di binari, in modo efficiente?

Quello che ho fatto una volta è stato, avere un feed modello separato (feeds_controller) e aggiornarlo in callback after_save a tutti i interesting Modelli. Quindi, ad esempio, se hai un articolo modello, richiedi una richiamata after_save:

def after_save
  feed = Feed.new
  feed[:model_name] = 'Article'
  feed[:item_id] = id
  feed.save
end

quindi, puoi accedere al feed in modo lineare come qualsiasi altro modello. La spesa di calcolo viene sostenuta quando si salva il feed, non si legge dal feed.

Oh, puoi anche avere Feed has_many :article; has_many :user, has_many :status e così via, e poi :include tutte quelle risorse nel feed e renderle nelle visualizzazioni. Spero che questo abbia senso;-)