Sortable Element with Partials?


#1

Hi Everyone,

I posted this last month and unfortunately, I didn’t recieve any
replies. Maybe this time I’ll have better luck. I originally had my
sortable element list working properly like so:

    <% @items.each do |item| %>
  • <%= image_tag "dragme.gif" %> <%= item.value %> <%= link_to("Delete", :action => "destroy", :id => item.id) %>
  • <%= sortable_element(‘sortable_list’, :update => “list-info”, :url =>
    {:action => :update_positions}) %>
    <% end %>

However, now that I have added AJAX CRUD controls, I can’t seem to get
the sortable elements to work! I am using a partial within my

    and
    I suspect that this may be part of the problem…
      <%= render(:partial => 'item', :collection => @items) %>
    <%= sortable_element('sortable_list', :update => "list-info", :url => {:action => :update_positions}) %>

    I think it may not be getting the proper items or IDs to set them to
    “sortable elements”. Does anybody have any ideas?

    Thanks in advance. By the way, I am very new to rails, please let me
    know if you need anything else to help solve the problem.


#2

Jordan I. wrote:

Hi Everyone,

I posted this last month and unfortunately, I didn’t recieve any
replies. Maybe this time I’ll have better luck. I originally had my
sortable element list working properly like so:

    <% @items.each do |item| %>
  • <%= image_tag "dragme.gif" %> <%= item.value %> <%= link_to("Delete", :action => "destroy", :id => item.id) %>
  • <%= sortable_element(‘sortable_list’, :update => “list-info”, :url =>
    {:action => :update_positions}) %>
    <% end %>

However, now that I have added AJAX CRUD controls, I can’t seem to get
the sortable elements to work! I am using a partial within my

    and
    I suspect that this may be part of the problem…
      <%= render(:partial => 'item', :collection => @items) %>
    <%= sortable_element('sortable_list', :update => "list-info", :url => {:action => :update_positions}) %>

    I think it may not be getting the proper items or IDs to set them to
    “sortable elements”. Does anybody have any ideas?

    Thanks in advance. By the way, I am very new to rails, please let me
    know if you need anything else to help solve the problem.

Jordan,
Try passing the object you’re using to your partial like this:
<%= render(:partial => ‘item’, :collection => @items,:locals => {:item
=> item}) %>

Then when you want to modify the item use:
{ :action => ‘edit_item’, :id => item }
for example.

I hope that’s enough to help.