假设在程序运行时多次创建,更改和保存foo
。
通常foo.bar == "sensible value"
,但偶尔会foo.bar == "crazy value"
。
我是否可以通过某种方式运行rails server --debugger
,并将其放入调试控制台foo.bar == "crazy value"
处?
答案 0 :(得分:2)
你试过吗
if foo.bar == "crazy value"
require 'ruby-debug'; debugger
end
这应该放置一个断点,当你正常运行bundle exec rails server
时触发该断点,并且只有当foo.bar
具有你(不)想要的值时才会触发。
如果您使用的是bundler,那么Ruby 1.9确保您拥有
gem 'ruby-debug19', :require => 'ruby-debug'
在你的Gemfile中(在开发和测试组中)。