#controller def test @items = Todo.find(:all, :order => "pos") end def update_positions i = 1 params[:sortable_list].each do |item_id| @item = Todo.find(item_id) @item.pos = i @item.save i += 1 end @test = Todo.find(:all, :order => "pos") render :layout => false, :action => :test end #view <%= javascript_include_tag 'prototype','controls','effects','dragdrop' %>
<%= sortable_element('sortable_list', :update => :sortable_list, :url => {:action => :update_positions}) %>