help with page.replace_html and partials


The gist of this is that I'm trying to move an item from one partial
to another, and the item disappear when I delete it from the first
partial, and have that item appear in the second partial instantly.
Just moving a listing from one partial to another, without rerendering
the entire page. Simple, right? Can't figure it out.

I have two partials (lists) on a page (index).

Each partial gets drawn, paginated, from this part of my index

def index

     @listing_pages, @listings = paginate(:listings,
         :conditions => ["search_term_id = ? and deleted = '0'", id],
        :order => 'position',
        :per_page => 50)
     @deleted_listing_pages, @deleted_listings = paginate(:listings,
         :conditions => ["search_term_id = ? and deleted = '1'", id],
        :order => 'updated_at DESC',
        :per_page => 5)


Both partials work, and paginate correctly. I've put the code for
them below.

When I click a button, I want a listing's "deleted" column in the
database to update from 0 to 1, then update the
_deleted_listings.rhtml partial, so that the "deleted" listings shows
up in the "deleted_listings.rhtml" partial.

I have an action in my controller called "update_deleted" that does
just this, and it works in the database. I have a partial called
update_deleted.rjs that looks like this:

page.replace_html "deleted_web_listing", :partial =>

And it does not work. Help! I can't figure it out. When I do this:

page.replace_html "deleted_listing", '<div>replacement text</div>'

I see "replacement text" in the right place. But when I put the
partial name in there, I get an error that suggests that my partial
_deleted_listings.rhtml is not picking up the right parameters to
render properly, though it renders fine when called from the page

ActionView::TemplateError (You have a nil object when you didn't
expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.each) on line #2 of app/views/
1: <div id="deleted_web_listing" class="left_column_listing">
2: <% for listing in @deleted_listings %>
3: <div id="deleted_item_< %>" class="box_left">
4: <div class="x_image">
5: <%= link_to_remote(image_tag("restore.gif", :size =>
"44x13", :border => "0" ),



<div id="listing" class="listing">
  <% for listing in @listings %>
  <div id="item_<%= %>" >
    <div id="box" class="box">
      <div class="x_image">
        <% item = "item_#{}" %>
        <% deleted_item = "listing" %>
        <%= link_to_remote(image_tag("x.gif", :size =>
"17x13", :border => "0" ),
    :url => { :action => 'update_deleted' , :id =>},
    :before => visual_effect(:fade, "item_#{}", :duration =>
"0.5" ),
    :complete => visual_effect(:highlight,
"deleted_listings_header", :startcolor => "'#FF0000'" )) %>
      <div class="search_result_position"><%= listing.position %>.</


      <td><div class="search_result_title"><%=
link_to(truncate(listing.title, 60), {:controller =>
'redirect', :action => 'log_and_redirect', :id =>}) %></


      <div class="search_result_description"><%=
h(truncate(listing.description, 90)) %></div>
      <div class="search_result_url_to_show"><%=
h(truncate(listing.url_to_show, 70)) %></div>
<% end %>


<div id="deleted_listing" class="left_column_listing">
  <% for listing in @deleted_listings %>
    <div id="deleted_item_< %>" class="box_left">
      <div class="x_image">
      <%= link_to_remote(image_tag("restore.gif", :size =>
"44x13", :border => "0" ),
    :url => { :action => 'restore_deleted' , :controller=> :admin, :id
      <div class="search_result_url_to_show"><%=
h(truncate(listing.url_to_show, 22)) %></div>
      <div class="search_result_description"><%=
h(truncate(listing.description, 35)) %></div>
<% end %>