2010-08-10 41 views
0

我正在使用will_paginate對分頁結果進行分頁。我的大部分網站都是AJAX化的。視圖中的所有記錄都可以進行編輯/刪除。這些記錄是分頁的。我想知道是否有任何方法來重置AJAX銷燬的分頁。重置AJAX分頁上的分頁

例如,假設我有20條記錄,每頁顯示5條記錄。如果用戶刪除一條記錄,我希望分頁鏈接相應地重置。另外,我必須將下一個記錄放入當前頁面並顯示它以代替已刪除的記錄。我只是想知道是否有一些可用的gem /插件。如果不是,我將不得不自己做一個。

是否有任何其他替代方案,我正在使用的設計方法?也許是Twitter/Buzz/Tumblr分頁的內容?還是有什麼你遇到過的解決這個問題的更好/更酷的方式?

回答

1

據我所知,只是重新加載持有5條記錄和分頁不是一個選項。

如果是這種情況,那麼在destroy方法上,您還可以附加一條新記錄並重新加載分頁。

def destroy 
    # destroy record 
    ... 
    #reload records for current page  
    @models = MyModel.paginate(:page => params[:page]) 
    render :update do |page| 
    #remove record div 
    ... 
    new_record_to_append = @models[MyModel.per_page - 1] 
    #append the last record to the page 
    page.insert_html(:bottom, 'content', :partial => 'my_partial', :object => new_record_to_append) if new_record_to_append 
    #replace pagination 
    page.replace 'pagination', :partial => 'pagination_partial' 
    end 
end 
+0

很酷。這很好用! :) – 2010-08-13 06:41:17