Om jag förstår det rätt, lägger du till en ny post med en tidsstämpel och status varje gång du uppdaterar en servers status? Om det stämmer måste du GROUP BY server_id
och ORDER BY date DESC
.
Det kan uttryckas i SQL som
SELECT * FROM servers GROUP BY server_id ORDER BY date DESC;
eller i Rails ActiveRecord som
Server.all.group(:server_id).order(:created_at => :desc)
(Som en sidoanteckning rekommenderar jag att du kallar den här modellen något i stil med ServerStatus
snarare än bara Server
- det representerar statusen, inte själva servern.)