我正在将应用程序从rails 2.3迁移到rails 3.1,大部分都已完成但有问题,当会话过期并重新加载页面而不是重定向到登录页面时我收到错误
对于ActionDispatch :: Cookies :: CookieJar,未定义的方法`大小':0x007fa415c12670>
这是我收到错误的代码
def access_denied
respond_to do |accepts|
accepts.html do
test_location
if cookies.size==0 && request.host == "somedomain.com"
redirect_to "/cookies_disabled.html"
else
redirect_to new_session_url
end
end
accepts.js do
render :text => "window.location.href = '#{new_session_url}';"
end
end
false
end
任何帮助都会得到满足,谢谢。
答案 0 :(得分:0)
似乎是这个的转贴 Rails 3.2.1 - cannot parse Cookie header: undefined method `size' for nil:NilClass
尝试更新您的机架宝石。
答案 1 :(得分:0)
显然没有size
方法。
https://www.rubydoc.info/github/rails/rails/ActionDispatch/Cookies/CookieJar
cookies.to_json.size
效果很好