我在Rails应用程序中使用了撬。我设置了绑定。窥探我的模型中的一个循环,尝试调试一个问题。例如:
(1..100).each do |i|
binding.pry
puts i
end
当我输入quit时,它会进入下一个迭代并再次停止。是否有一种方法可以退出循环,这样我就不必键入退出100次了?
目前我知道如何摆脱它的唯一方法是使用CTRL+C并重新启动应用程序。
我在Rails应用程序中使用了撬。我设置了绑定。窥探我的模型中的一个循环,尝试调试一个问题。例如:
(1..100).each do |i|
binding.pry
puts i
end
当我输入quit时,它会进入下一个迭代并再次停止。是否有一种方法可以退出循环,这样我就不必键入退出100次了?
目前我知道如何摆脱它的唯一方法是使用CTRL+C并重新启动应用程序。
当前回答
要退出所有内容,使用:
exit!
这应该忽略所有正在进行的绑定。
其他回答
如果你只需要调试一次迭代,你可以直接抛出错误,转义保证:
(1..100).each do |i|
binding.pry
raise
puts i
end
或有条件地:
(1..100).each do |i|
if i == 50
binding.pry
raise
end
puts i
end
按“q”,你会看到像这样
[1] pry(#<AlbumsController>)>
type
exit
如果没有,这一个词也可以:
control + c
Use
disable-pry
若要可恢复,请将此添加到控制器中
ENV['DISABLE_PRY'] = nil
我使用:
disable-pry
这将保持程序运行,但将防止它继续停止执行。当您在控制台中调试时,这尤其有用。
三个感叹(!!)就可以了。