Según se vaya avanzando en un proyecto, es posible que nos veamos en la necesidad de encotrar los registros vecinos para el que estemos utilizando en un momento dado. De este modo, por ejemplo si uno esta posicionado en un registro y desea obtener el siguiente, tener algo como "next" o "previous" sería muy útil.
Acts_as_ordered es un plugin interesante para obtener los registros previos o siguientes a uno determinado.Es muy versatil y potente. Se puede descargar de aquí.
Para mi cuestiones particulares, lo resolví a lo bestia, incluyendo estos dos métodos en la clase que los requería.
def self.previous id prev_id= self.minimum(:id, :conditions => ['id > ?', id]) self.find(prev_id) end def self.next id next_id=self.maximum(:id, :conditions => ['id < ?', id]) self.find(next_id) end
Inspirado de un reply en Duane's Brain
Comentarios recientes
38 weeks 4 days ago
40 weeks 2 days ago
1 año 20 weeks ago
1 año 22 weeks ago
1 año 35 weeks ago
1 año 40 weeks ago
1 año 45 weeks ago
1 año 45 weeks ago
1 año 46 weeks ago
1 año 46 weeks ago