我以前用的 rubymine,想换到 sublime text2 上来,请大家推荐点 debug 的 gem 或者插件 ^_^ 多谢。
官网指南已经有 debug 一章了,LZ 不妨关注下吧。 个人 debug 还是喜欢 rubymine。
不用 rubymine 估计得 logger 和 puts。手动 debug 没玩过,不知道方便不方便。
以前用 netbean 做 debug 换成 sublime text 后用 ruby-debug 后来发现了 pry
就彻底放弃了 ruby-debug 一直在使用 pry
我觉得 pry 很好用 虽然不能像 debug 那样一步步跟进, 但是用于查看系统某一个时段的状态,非常的方便
#26 楼 @azhao 好像是不能,我搜到https://github.com/pry/pry/issues/476i这个,但按有人回复里说的,“have same issue, my solution is add pry-remote on your Gemfile, and you should call binding.remote_pry instead binding.pry,” 结果居然还报错,真的跟 Passenger 不兼容么=_=
后台的报错信息是这样的,能顺便帮我看看么……
terrychen@ubuntu:~$ pry-remote
/usr/lib/ruby/1.8/drb/drb.rb:736:in `open': druby://localhost:9876 - #<Errno::ECONNREFUSED: Connection refused - connect(2)> (DRb::DRbConnError)
from /usr/lib/ruby/1.8/drb/drb.rb:729:in `each'
from /usr/lib/ruby/1.8/drb/drb.rb:729:in `open'
from /usr/lib/ruby/1.8/drb/drb.rb:1191:in `initialize'
from /usr/lib/ruby/1.8/drb/drb.rb:1171:in `new'
from /usr/lib/ruby/1.8/drb/drb.rb:1171:in `open'
from /usr/lib/ruby/1.8/drb/drb.rb:1087:in `method_missing'
from /usr/lib/ruby/1.8/drb/drb.rb:1105:in `with_friend'
from /usr/lib/ruby/1.8/drb/drb.rb:1086:in `method_missing'
from /usr/lib/ruby/gems/1.8/gems/pry-remote-0.1.4/lib/pry-remote.rb:186:in `run'
from /usr/lib/ruby/gems/1.8/gems/pry-remote-0.1.4/bin/pry-remote:4
from /usr/bin/pry-remote:19:in `load'
from /usr/bin/pry-remote:19
@azhao @ery 好吧,那改成问 thin 的问题……
我运行thin start -e development -D
,然后被提示说这个:
terrychen@ubuntu:~/EIMV4$ thin start -e development -p 80 -D
>> Using rack adapter
/usr/lib/ruby/gems/1.8/gems/bundler-1.1.3/lib/bundler/runtime.rb:31:in `setup': You have already activated rack 1.4.1, but your Gemfile requires rack 1.2.3. Using bundle exec may solve this. (Gem::LoadError)
看意思是说我的 rack 版本不对,但这时候我删掉 1.2.3 的那个的话,提示我运行 bundle install;如果我删掉 1.4.1 的话,又提示我有 actionpack 需要 1.4 以上版本
You have requested to uninstall the gem:
rack-1.4.1
rack-mount-0.6.14 depends on [rack (>= 1.0.0)]
actionpack-3.2.3 depends on [rack (~> 1.4.0)]
这时候我要怎么办才对呢…… 附上我的 gemfile:
source 'http://rubygems.org'
gem 'rails', '3.0.4'
gem 'mysql2', '0.2.6'
gem 'thin'
gem 'mini_magick', '3.2'
gem "prawn", :path => 'vendor/prawn'
gem "will_paginate"
gem "pry-rails", :group => :development
咬牙把 rails 升级成了 3.2.3,倒是可以调出 pry 了,但现在的问题貌似变成了连不上数据库……
[3] pry(#<VendorsController>)> User.all
NoMethodError: undefined method `accept' for nil:NilClass
from /usr/lib/ruby/gems/1.8/gems/activerecord-3.2.3/lib/active_record/connection_adapters/abstract/database_statements.rb:7:in `to_sql'