在我正在构建的站点中,复杂的页面需要 > 1 秒才能在浏览器中加载。简单的只需不到一秒钟。
在渲染任何页面之前,如何让 Rails 进入睡眠状态( 1.second - processing_time() )。
这个想法是给用户一个一致的等待时间。(任何页面都不应在 1 秒内到达浏览器)
有没有可以帮助我解决这个问题的宝石?(我在轨道上 4)
在我正在构建的站点中,复杂的页面需要 > 1 秒才能在浏览器中加载。简单的只需不到一秒钟。
在渲染任何页面之前,如何让 Rails 进入睡眠状态( 1.second - processing_time() )。
这个想法是给用户一个一致的等待时间。(任何页面都不应在 1 秒内到达浏览器)
有没有可以帮助我解决这个问题的宝石?(我在轨道上 4)
我想你可以做这样的事情:
class MyController < ApplicationController
def show
sleep 1
# Do something
end
end
在此处阅读有关 Ruby 睡眠的更多信息:http: //apidock.com/ruby/Kernel/sleep
如果您在整个 Rails 应用程序中执行此操作,我会将其放入您的应用程序控制器并重用它。例如:
class ApplicationController
...
def sleep_one_second
sleep 1
end
end
在您的控制器中,选择要延迟的操作:
class MyController < ApplicationController
before_action :sleep_one_second, only: [:show, :index]
...
end