request_url = request.referer//記得應該是request_url的,但是不清楚為什麼不得不到
delete_item_by_id params[:id]
redirect_to request_url
解法1:
current_url = request.referer
jump_url = current_url
page_number = (current_url.split '?')[1][5]
if page_number != 1
if items.find_all_by_user_id(current_user_id).last.id == params[:id] &&
items.find_all_by_user_id(current_user_id).count % 10 == 1
jump_url = '/show?page=' + (page_number - 1).to_s
enddelete_item_by_id params[:id]
redirect_to jump_url
end
解法2:
這只是乙個解決方案,類似的解決方案跟他類似,就是根據剩下的item條數,判斷總頁數,經過判斷後去調到相應的頁面 。
delete_item_by_id params[:id]
if param[:id] == items.find_all_by_user_id(current_user_id).last.id
last_page_count = all_items %10
if last_page_count == 0
page_number -= 1
endendredirect_to '/show?page=' + page_number
解法3這是在分頁的時候做的,想法是如果當前頁面的條數是0的話,那就跳轉到page-1的頁面上。這個跳轉是由伺服器發起的。
@items= items.where(:user_id => current_user_id).paginate(:page => params[:page], :per_page => 10)
if @items.length == 0 && params[:page] != 1
redirect_to '/show?page=' + ( params[:page].to_i - 1).to_s
endredirect_to request.referer
解法4:這裡做的跳轉是右瀏覽器發起的
//假如當前url是 /show?page=10這四種方法前兩種是一類,後兩種是一類。if($('#item_group').length == 0 )
前一類的做法缺點是可能會造成比較大的資料庫讀寫,第2種會小一些,優點是相關操作,比如頁數減少在距離delete比較近的地方,別人檢視的時候更方便。
後一類做法缺點是:使用重定向,占用網路資源,使用者體驗略差,有點是減少了資料的操作,尤其第四種方法,跳轉放到了客戶端,再別人檢視**的時候很不方便。
所以推薦的是第二種和第三種方法。
ajax 刪除一條資料
對這一段話的理解 先找到需要刪除的節點,以及節點裡的文字 用 ajax 傳送請求,請求方式為 post 請求內容為需要刪除記錄的檔案,datatype 定義資料型別 json 通常都是 json data name sname,是要刪除 name 屬性為sname 的那一條資訊 success fu...
sql中查詢每組的最後一條資料
學號 分數 測試時間 1 70 2011 10 21 20 21 32 1 85 2011 12 10 10 19 02 2 49 2012 02 11 13 32 45 2 60 2011 08 24 09 21 19 3 80 2011 04 20 14 44 10 我希望查出來的結果是 1 8...
一條資料引發的問題
需要統計三方軟體使用的時長,但是要求在電腦處於休眠 睡眠狀態下的時間段不能作為使用時長統計進去。其實這個問題點有兩個需要解決的問題 軟體在使用的標準是什麼?如何知道電腦什麼時候從執行狀態進入休眠 睡眠狀態,或從休眠 睡眠狀態進入執行狀態?被紅色線圈中的就是需要的。通過相關api,獲取到系統休眠 睡眠...