Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails ruby rails binding.pry如何单步执行_Ruby On Rails_Ruby_Pry - Fatal编程技术网

Ruby on rails ruby rails binding.pry如何单步执行

Ruby on rails ruby rails binding.pry如何单步执行,ruby-on-rails,ruby,pry,Ruby On Rails,Ruby,Pry,当使用ruby rails的binding.pry时,有哪些终端命令可以跳过一行代码?此外,您知道要进入、退出和继续的命令吗 以下是一个例子: def add_nums x = 5 + 5 binding.pry x += 5 x += 7 return x end 我想知道如何单步执行此方法,并在终端中查看“x”的值,直到返回为止。谢谢不雅观的解决方案 由于您可以访问x的范围,请手动输入每一行(或任何您想要的内容),并查看它对变量的影响 更优雅的解

当使用ruby rails的binding.pry时,有哪些终端命令可以跳过一行代码?此外,您知道要进入、退出和继续的命令吗

以下是一个例子:

def add_nums
    x = 5 + 5
    binding.pry
    x += 5
    x += 7
    return x
end  

我想知道如何单步执行此方法,并在终端中查看“x”的值,直到返回为止。谢谢

不雅观的解决方案

由于您可以访问
x
的范围,请手动输入每一行(或任何您想要的内容),并查看它对变量的影响

更优雅的解决方案

查看(MRI 1.9.2+)或(MRI 2+)中的任何一个,它们为您提供手动单步执行代码的控件。如果选择ByeBug,简短的语法示例如下:

def some_method
  puts 'Hello World' # Run 'step' in the console to move here
end

binding.pry
some_method          # Execution will stop here.
puts 'Goodbye World' # Run 'next' in the console to move here.

希望这有帮助。

next
执行该行代码并继续执行下一行<代码>步骤进入函数
quit
让程序继续运行。

您应该能够在提示下键入
help
以查看可用的命令。