Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.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中,是否有一个;持续时间“{fetch_some_data()}”;它可以打印;获取一些数据()完成,耗时2.1秒;?_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 在Ruby或Rails中,是否有一个;持续时间“{fetch_some_data()}”;它可以打印;获取一些数据()完成,耗时2.1秒;?

Ruby on rails 在Ruby或Rails中,是否有一个;持续时间“{fetch_some_data()}”;它可以打印;获取一些数据()完成,耗时2.1秒;?,ruby-on-rails,ruby,Ruby On Rails,Ruby,在Rails中,已经有这样的功能了吗 这样我们就可以使用 <%= duration_for { fetch_some_data() } %> 否则,用Ruby编写的好方法是什么?(更像是一种方法,因此我们不能使用UNIX的时间来完成这项工作) 将以毫秒为单位返回完成块所需的时间 一般来看这个类,它有几个有用的方法。在Rails中,它不会打印由获取一些数据()返回的结果,Benchmark.ms返回类似1213.238的值,表示1.213秒。。。但我想打印出来可能需要%.3f秒%[B

在Rails中,已经有这样的功能了吗

这样我们就可以使用

<%= duration_for { fetch_some_data() } %>
否则,用Ruby编写的好方法是什么?(更像是一种方法,因此我们不能使用UNIX的
时间
来完成这项工作)

将以毫秒为单位返回完成块所需的时间


一般来看这个类,它有几个有用的方法。在Rails中,它不会打印由
获取一些数据()返回的结果,
Benchmark.ms
返回类似1213.238的值,表示1.213秒。。。但我想打印出来可能需要%.3f秒%[Benchmark.ms{sleep 1.23456}/1000]
。详细信息是什么,以便它与视图和应用程序帮助程序配合良好?另外,在HAML中,
do
是由HAML自动关闭的,因此它有点混乱,并且您无法轻松地将
/1000]
部分放在其中。你能给出一个和{fetch\u some\u data()}的HAML
=duration\u一样干净的解决方案吗?
查询和查看/部分渲染时间,以及到达请求的总时间,都列在Rails的日志中。我明白了,这很有帮助。如果它可以在屏幕上显示以便于调试,那会很方便,但是如果
获取一些数据()
实际上正在执行HTTP请求呢?那会在日志里吗?
fetch_some_data() done, result is:
  {"status" : 1, "data" : {"x" : 123} }
(took 2.1 seconds)
require 'benchmark'
Benchmark.ms do
  fetch_some_data()
end