Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.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无异常地获取回溯_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails Ruby无异常地获取回溯

Ruby on rails Ruby无异常地获取回溯,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一个RubyonRails应用程序,其中一个模型的验证失败。对于验证可能失败的地方,代码库中有不同的入口点。我想知道它是从哪里来的。因为它是一个简单的验证方法,所以不涉及任何异常,我只是从该方法返回false,保存失败 当前是否还可以记录回溯以确定此验证来自哪个服务/路由,以便我可以看到是什么原因导致此对象的状态发生更改,从而使其无法通过验证?我不确定是否有一种聪明的方法来完成此操作,但这样可以完成此任务。你甚至可以把它包装成一个漂亮的小函数。我不确定抛出异常和解救异常是否会影响性能,但您可

我有一个RubyonRails应用程序,其中一个模型的验证失败。对于验证可能失败的地方,代码库中有不同的入口点。我想知道它是从哪里来的。因为它是一个简单的验证方法,所以不涉及任何异常,我只是从该方法返回false,保存失败


当前是否还可以记录回溯以确定此验证来自哪个服务/路由,以便我可以看到是什么原因导致此对象的状态发生更改,从而使其无法通过验证?

我不确定是否有一种聪明的方法来完成此操作,但这样可以完成此任务。你甚至可以把它包装成一个漂亮的小函数。我不确定抛出异常和解救异常是否会影响性能,但您可能不希望在生产中执行类似的操作

begin
  throw
rescue
  puts $!.backtrace
end
您可以尝试调用方():

结果:

test.rb:5:in `foo'
test.rb:7:in `<main>'
test.rb:5:in'foo'
测试rb:7:in`'
test.rb:5:in `foo'
test.rb:7:in `<main>'