Q
刷新相同頁面
1
A
回答
4
你可以使用'render'刷新頁面,'redirect_to'重定向到通過其控制器的頁面。
,如果要存儲一個頁面重定向到,您可以使用:
def store_location
session[:return_to] = request.fullpath
end
def redirect_back_or(default)
redirect_to(session[:return_to] || default)
clear_return_to
end
def clear_return_to
session[:return_to] = nil
end
這是從邁克爾·哈特爾的書拍攝,他用類似的代碼在用戶登錄後重定向到所請求的頁面。
http://railstutorial.org/chapters/updating-showing-and-deleting-users#sec:friendly_forwarding
0
Rails有redirect_to :back
。更多的信息在這裏:http://api.rubyonrails.org/classes/ActionController/Redirecting.html
如上所述,它相當於redirect_to(request.env["HTTP_REFERER"])
這是「讓我回到發送給我的頁面。」
你可以做一個控制器動作,在最後做你想要的然後redirect_to :back
。
如果我沒有任何與我的頁面關聯的登錄和會話,該怎麼辦? – Jayaram 2010-09-27 21:23:26
會話與登錄無關,並且在那裏除非您明確關閉它們。他們是爲瀏覽您的網站的特定人員存儲數據的一種方式。 我從你的問題中瞭解到,操作被調用的頁面始終不一樣,你想跟蹤它。如果是這樣,您需要使用會話,以便您爲一個人存儲的值不會干擾另一個人。 如果您只有一個頁面調用該特定操作,那麼您已經知道該頁面的路徑,並且不需要存儲它。所以你可以直接使用'redirect_to'或'render'。 – 2010-09-28 16:07:23