2015-11-03 67 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作为实例方法。