2013-02-15 66 views
0

爲了網絡追蹤的目的,我想在Rails中使用redirect_to時保留HTTP引用者。這需要重定向到相應的語言版本。在Ruby on Rails中保留redirect_to上的引用者

代碼示例:

redirect_to "/#{Option[:locales].first}", :status => 301 

我怎麼能保存不使用查詢參數引薦?

回答

2

this question中有詳細的幾種方法。

我的首選方法是在控制器中爲store_referrer設置一個before_filter,在我的application_controller中調用此方法。然後在您的操作中使用redirect_back_or_default方法來處理重定向。

def store_referrer 
    session[:return_to] = request.request_uri 
end 

def redirect_back_or_default(default) 
    redirect_to(session[:return_to] || default) 
    session[:return_to] = nil 
end 

您也可以看看redirect_to :back方法是Rails中可用,或者如果你使用Authlogic /設計,它們都配備了類似的助手做同樣的事情。

通過鏈接線程看看,this暗示troex是一個不錯的選擇。

+0

謝謝,我會試試這個方法。 – Tim 2013-02-17 15:41:14