2015-11-03 38 views
0

我有一個應用程序,它將default_url_options中的一些東西設置爲實例方法。設計:我怎樣才能得到default_url_options作爲實例方法

def default_url_options(options={}) 
    added_options = { locale: I18n.locale } 
    added_options[:root] = params[:root].present? ? params[:root] : nil 
    options.merge(added_options) 
end 

但是隻有在default_url_options設置爲類方法時才能使用。正如你所看到的,我必須訪問參數,那些不能用作類方法。

https://github.com/plataformatec/devise/wiki/How-To:--Redirect-with-locale-after-authentication-failure

任何想法如何解決這一問題?提前致謝!

回答

0

我使用的一個途徑破解得到它的工作...

get "https://stackoverflow.com/users/sign_in" => redirect("/en/users/sign_in") 

取得:locale可選的途徑。 這樣我可以使用default_url_options作爲實例方法。