在rails的lib /目录中设置断点

时间:2016-03-30 15:54:54

标签: ruby-on-rails debugging

我已将处理文档生成的代码放到我的Rails应用程序中的schema_migrations文件夹中。但现在我无法调试该代码:lib/parserbinding.pry都没有效果。提起异常也不会在日志和byebug rails server频道中显示。有没有办法微调它,或调试它我必须把它放在别的地方?

模块本身包含在控制器中

stdout

2 个答案:

答案 0 :(得分:1)

感谢@Naremy,我发现了自己的错误。问题是:我遇到了begin...rescue阻止错误,阻止它们浮动到输出rails server。由于错误与其他代码块(我试图设置断点)相同,我找不到它。 因此删除rescue做了一个动作,现在一切都按预期工作了。

总的来说:如果你发现错误,rails server输出和better_errors gem都不会显示任何内容。

答案 1 :(得分:0)

您可以在每次更改后重新启动服务器,它会起作用,但如果您有很多代码,那么它可能很长。

您还可以在autoload_paths中添加代码(到application.rb中):

config.autoload_paths += Dir[Rails.root.join('lib', '**/')]

另见Auto-loading lib files in Rails 4