前言:不一定是rails5的问题,在大于rails3.1.1的版本中都可能会出现(没打算去研究具体是哪个版本导致的)
这是一个项目从ruby1.9.3,rails3.1.1,升级到ruby2.4.0,rails5.0.1 过程中遇到的问题汇总
1.用户登录=》登出=》重新登录的时候,报错
ActionController::InvalidAuthenticityToken
注意:是点击退出链接,发生的错误。(如果在地址栏直接键入url地址,不会报错。)
查询了相关资料,感觉都没有一个合理的说法,讨论链接参考https://github.com/plataformatec/devise/issues/2734
感觉比较合理的是这个说法,也是解决方案:https://github.com/plataformatec/devise/pull/4033/files
即在application_controller..rb中添加
protect_from_forgery prepend: true