【发布时间】:2014-02-06 20:33:15
【问题描述】:
我不知道这是什么问题。我正在 Rails 控制台中尝试这个:
>> agent = Mechanize.new
NoMethodError: undefined method `user' for nil:NilClass
我添加了 gem 'mechanize' 并进行了捆绑安装。我确实需要“机械化”。我还尝试了下面的 require 'nokogiri' ,每次我得到同样的错误。我尝试了 4 或 5 种不同的方法来实例化一个新的机械化对象,但始终找不到。
我在整个 Rails 应用程序中搜索字符串“.user”,但没有找到。不知道这里有什么交易。有什么想法吗?
谢谢
编辑
全栈跟踪
NoMethodError: undefined method `user' for nil:NilClass
from /home/me/.rvm/gems/ruby-1.9.3-p448@my_app/gems/net-http-persistent-2.9.2/lib/net/http/persistent.rb:866:in `proxy='
from /home/me/.rvm/gems/ruby-1.9.3-p448@my_app/gems/mechanize-2.7.2/lib/mechanize/http/agent.rb:1189:in `set_proxy'
from /home/me/.rvm/gems/ruby-1.9.3-p448@my_app/gems/mechanize-2.7.2/lib/mechanize.rb:204:in `initialize'
from (irb):5:in `new'
from (irb):5
from /home/me/.rvm/gems/ruby-1.9.3-p448@global/gems/railties-3.2.15/lib/rails/commands/console.rb:47:in `start'
from /home/me/.rvm/gems/ruby-1.9.3-p448@global/gems/railties-3.2.15/lib/rails/commands/console.rb:8:in `start'
from /home/me/.rvm/gems/ruby-1.9.3-p448@global/gems/railties-3.2.15/lib/rails/commands.rb:41:in `<top (required)>'
from /home/me/Dropbox/Work/RubymineProjects/apps/my_app/script/rails:6:in `require'
from /home/me/Dropbox/Work/RubymineProjects/apps/my_app/script/rails:6:in `<top (required)>'
from -e:1:in `load'
from -e:1:in `<main>'
【问题讨论】:
-
你能添加整个堆栈跟踪吗?
-
它看起来与您的 http 代理有关。
-
据我所知,我没有使用代理。我在我的家庭网络上,没有代理。我使用的是虚拟机,这会有所不同吗?我该如何解决这个问题,因为我不明白即使我在代理后面,对象实例化也会引发错误。
标签: ruby-on-rails ruby mechanize