我是ruby on rails的新手,我想通过调试器i rails server console来调试我的rails应用程序。所以请告诉我快捷方式,这样我就可以调试。
答案 0 :(得分:0)
要在生产中打开rails console
,您可以输入:
RAILS_ENV=production bundle exec rails c
或者,如果要在运行时调试代码,可以使用:
答案 1 :(得分:0)
执行此操作的官方方法是使用byebug
gem。通过执行
gem install byebug
之后,您可以在代码中的任何位置添加byebug
语句:
class PeopleController < ApplicationController
def new
byebug
@person = Person.new
end
end
一旦应用程序到达此语句,它就会停止并在您启动服务器进程的shell中显示命令提示符。
有关详细信息,请参阅RoR Debugging Guide。
答案 2 :(得分:0)
Rails 4默认包含byebug
和web-console
。在开发模式中,您只需在代码中的任何位置调用byebug
即可停止执行并获得调试器控制台。
在视图中,您可以使用:
<%= console %>
在异常页面上访问IRB控制台。
请参阅debugging guide。
如果您没有Rails 4,请添加到以下Gemfile
:
group :development, :test do
gem 'byebug'
end
并运行bundle install
。
答案 3 :(得分:0)
从Rails 2.0开始,Rails内置了对ruby-debug的支持。在任何Rails应用程序中,都可以通过调用debugger方法来调用调试器。
这是一个例子:
class PeopleController < ApplicationController
def new
debugger
@person = Person.new
end
end
如果您在控制台或日志中看到该消息:
***** Debugger requested, but was not available: Start server with --debugger to enable *****
确保已使用--debugger选项启动了Web服务器:
rails server --debugger
=> Booting WEBrick
=> Rails 3.0.0 application starting on http://0.0.0.0:3000
=> Debugger enabled
...
https://guides.rubyonrails.org/v3.2.0/debugging_rails_applications.html#debug