Rails错误:`method_missing&#39 ;: undefined方法`register_middleware'

时间:2014-04-26 07:29:03

标签: ruby-on-rails error-handling gem rake-task rails-console

在Rails上,我试图找到我刚刚创建的新任务,并且它给了我一个未定义的方法错误:

syck has been removed, psych is used instead
rake aborted!
NoMethodError: undefined method `register_middleware' for #<Faraday::Connection:0x007f8773f41288>
/Library/Ruby/Gems/2.0.0/gems/faraday-0.9.0/lib/faraday.rb:99:in `method_missing'
/Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced/client.rb:41:in `build_conn'
/Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced/client.rb:30:in `initialize'
/Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:29:in `new'
/Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:29:in `configure'
/Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:86:in `<module:Balanced>'
/Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:11:in `<top (required)>'
/Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:76:in `require'
/Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
/Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:72:in `each'
/Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:72:in `block in require'
/Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:61:in `each'
/Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:61:in `require'
/Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler.rb:132:in `require'
/Users/Stephanie/Desktop/Pixiboard/config/application.rb:8:in `<top (required)>'
/Users/Stephanie/Desktop/Pixiboard/Rakefile:5:in `<top (required)>'
(See full trace by running task with --trace)

尝试运行命令时,我也遇到了类似的错误&#34; rails console&#34; (看看我的任务是否有问题):

syck has been removed, psych is used instead
/Library/Ruby/Gems/2.0.0/gems/faraday-0.9.0/lib/faraday.rb:99:in `method_missing': undefined method `register_middleware' for #<Faraday::Connection:0x007f986c506700> (NoMethodError)
    from /Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced/client.rb:41:in `build_conn'
    from /Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced/client.rb:30:in `initialize'
    from /Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:29:in `new'
    from /Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:29:in `configure'
    from /Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:86:in `<module:Balanced>'
    from /Library/Ruby/Gems/2.0.0/gems/balanced-0.8.1/lib/balanced.rb:11:in `<top (required)>'
    from /Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:76:in `require'
    from /Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
    from /Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:72:in `each'
    from /Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:72:in `block in require'
    from /Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:61:in `each'
    from /Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler/runtime.rb:61:in `require'
    from /Library/Ruby/Gems/2.0.0/gems/bundler-1.6.2/lib/bundler.rb:132:in `require'
    from /Users/Stephanie/Desktop/Pixiboard/config/application.rb:8:in `<top (required)>'
    from /Library/Ruby/Gems/2.0.0/gems/railties-3.2.12/lib/rails/commands.rb:39:in `require'
    from /Library/Ruby/Gems/2.0.0/gems/railties-3.2.12/lib/rails/commands.rb:39:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

任何人都可以帮我做什么? (我在Rails 3.2.12上)

1 个答案:

答案 0 :(得分:2)

balanced-ruby尚未与法拉第0.9.0兼容。查看更多balanced-ruby/issues/173

并尝试在Gemfile中使用法拉第0.8.6:

gem 'faraday', '~> 0.8.6'