将rails从3.1.1升级到3.1.3后,参数个数错误(3个为1)

时间:2011-12-25 16:28:15

标签: ruby-on-rails-3

我已将rails 3.1.1应用程序升级到rails 3.1.3,现在,在每个请求中,它仅回答wrong number of arguments (3 for 1)。不幸的是,它没有说错误在哪里,应用程序跟踪是空的。我认为存在一些兼容性问题,但我真的不知道在哪里挖掘。

我的Gemfile和框架跟踪:https://gist.github.com/1519479

感谢您的帮助。

1 个答案:

答案 0 :(得分:6)

运行bundle show并检查omniauth gem的版本。可能在升级rails时,您也更新了omniauth

1.*的版本omniauth需要单独的gem omniauth-twitter进行Twitter身份验证。正如您在Gemfile中没有它一样,它会尝试从Twitter gem加载为中间件twitter类,这会导致类似的错误。

为避免将来出现此类问题,请考虑使用"~> 0.2.6"进行宝石版本控制而不是">= 0.2.6"。它可以保护您免受意外的宝石主要版本的侵害。