尝试让rails调试器工作。我做了以下事情:
gem install debugger
在Gemfile中添加
gem“debugger”,“〜> 1.2.0”
捆绑安装 - 没有错误
现在我把调试器放在我的一个控制器中
def show
require 'debugger'; debugger
@user = User.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @user }
end
end
当我指向浏览器时,我在浏览器上出现以下错误
LoadError in UsersController#show
cannot load such file -- debugger
我正在使用ruby 1.9.3p194(2012-04-20修订版35410)[x86_64-linux]和Rails 3.2.6与Phusion乘客
知道出了什么问题吗?
答案 0 :(得分:0)
删除require语句并使用调试器选项启动rails服务器
rails server --debugger
答案 1 :(得分:0)
不完全确定如何使用调试器gem,但它非常适合在活动代码中创建停止点。在Rails 3中,您只需要在routes.rb:
中gem 'debugger'
它在生产中没有任何影响,并且让它在任何时候停止你的代码,只需输入'debugger',你的服务器控制台就可以访问代码中的那一点。此时,要检查变量的状态,您需要访问IRB,因此只需输入'irb'即可。在“show”操作中,您可以检查参数的值以及是否填充@user。
def show
debugger
@user = User.find(params[:id])
...