Ruby on Rails
ActsAsList

ActsAsList provides the capabilities for sorting and reordering a number of objects in list. The class that has this specified needs to have a “position” column defined as an integer on the mapped database table1.

Todo list example:


  class TodoList < ActiveRecord::Base
    has_many :todo_items, :order => "position" 
  end

  class TodoItem < ActiveRecord::Base
    belongs_to :todo_list
    acts_as_list :scope => :todo_list
  end

  todo_list.first.move_to_bottom
  todo_list.last.move_higher

API documentation

Examples


1 Taken directly from the API