在Rails中调试?

你会如何在RubyonRails中成功调试’相对’? 我知道并广泛使用以下内容:

  • 终奌站
  • Rails控制台
  • 开发者工具
  • 日志文件(生产/开发)

如果有其他技术独立于运行的环境,那么它将有助于更快地调试批次。

这些gem使得调试Rails应用程序变得更加容易,而无需使用真正的调试器:

 group :development do gem "better_errors" gem "binding_of_caller" gem "pry-rails" end 

当您跳过错误时, 更好的错误会在浏览器中使用REPL为您提供完整的堆栈跟踪。

使用Pry,您可以在代码中的某处放置binding.pry语句,下一个请求将在该行停止。 现在,您可以检查控制台中正在运行的代码,检查或更改变量,然后键入exit以恢复请求。

这两个gem都有很多共同之处,对我而言,主要的区别在于better_errors提供了很好的反馈和不可预见错误的REPL,而pry让我有可能在我想要时停止,检查和恢复请求。