在Rails 4控制台中启用异常堆栈转储

The*_*ter 10 ruby stack-trace rails-console pry

我在Ruby 1.9.3上使用Ruby on Rails 4.在rake任务期间发生错误时,我得到一个非常好的堆栈跟踪.

但是,当我在我的rails控制台(pry)中执行触发异常的操作时,我只能看到错误消息和触发它的一行代码(大部分时间都在rails core中的某个位置).

有没有办法在控制台中启用这些堆栈转储?

The*_*ter 28

我自己找到了解决方案.

显然,我需要wtf?pry附带的命令.

[7] project »  p.known_attributes
NoMethodError: undefined method `foo' for #<Bar:0x007f871fd12a38>
from /[...]/gems/activemodel-4.0.0/lib/active_model/attribute_methods.rb:436:in `method_missing'

[8] project »  wtf?
Exception: NoMethodError: undefined method `foo' for #<Bar:0x007f871fd12a38>
--
[... stack dump ...]  

[9] project »  
Run Code Online (Sandbox Code Playgroud)

  • 这让我很高兴 (3认同)