9

ログファイルに「19msで200OK完了(ビュー:16.8ms |モデル:0.497ms)」と表示されるのと同様に、ビューにページの読み込み時間を表示するにはどうすればよいですか。

4

4 に答える 4

16

秒をより適切に使用することをお勧めします。

class ApplicationController < ActionController::Base

  before_filter :set_start_time

  def set_start_time
    @start_time = Time.now.to_f
  end

end

コードを表示:

Page Rendered in <%= sprintf('%.3f', (Time.now.to_f - @start_time) ) %> seconds
于 2012-03-11T07:17:24.850 に答える
10

これを行うことができます..アプリケーションにbefore_filterを追加します:

class ApplicationController < ActionController::Base
  protect_from_forgery
  before_filter :init

  def init
    @start_time = Time.now
  end
end

ビュー内(私はHAMLを使用しています):

load_time=#{Time.now-@start_time} seconds

これは、before_filterからビューで呼び出された場所までだけであるため、ログに表示される時間とまったく同じにはなりませんが、近くにある必要があります。

于 2010-11-15T20:00:26.640 に答える
0

以下のレールキャストビデオを見るだけで、関係するすべての詳細を知ることができます。

http://railscasts.com/episodes/368-miniprofiler?view=asciicast
于 2015-04-30T18:09:18.997 に答える
0

レンダリング速度のすべての詳細を示す小さなバッジをページの上部に追加するrack-mini-profilerを使用できます。

于 2017-10-18T02:19:47.300 に答える