Làm cách nào để hiển thị thời gian tải trang trong chế độ xem, tương tự như cách tệp nhật ký hiển thị "Hoàn thành 200 OK trong 19 mili giây (Lượt xem: 16.8ms | Mô hình: 0.497ms)"Thời gian tải trang hiển thị trong Rails 3
Trả lời
Bạn có thể muốn sử dụng Giây tốt hơn:
class ApplicationController < ActionController::Base
before_filter :set_start_time
def set_start_time
@start_time = Time.now.to_f
end
end
Xem Code:
Page Rendered in <%= sprintf('%.3f', (Time.now.to_f - @start_time)) %> seconds
Điều này thường sẽ dẫn đến giá trị âm, vì 'usec' kết thúc tốt đẹp đến 0 mỗi giây. –
bạn có thể làm điều này .. thêm một before_filter để application_controller của bạn:
class ApplicationController < ActionController::Base
protect_from_forgery
before_filter :init
def init
@start_time = Time.now
end
end
trong giao diện (tôi đang sử dụng HAML):
load_time=#{[email protected]_time} seconds
này sẽ không được chính xác giống như thời gian bạn thấy trong nhật ký, vì tôi t chỉ từ before_filter đến nơi nó được gọi trong khung nhìn, nhưng nó phải gần.
và tất nhiên điều này là xấu xí trong chế độ xem, chỉ hiển thị điều này để đơn giản. Bạn sẽ muốn đặt nó trong một người trợ giúp – johnmcaliley
Đóng đủ cho tôi! Cảm ơn!!! –
Chỉ cần đi qua đoạn video dưới đây railcast bạn sẽ làm quen với tất cả các chi tiết có liên quan của bạn.
http://railscasts.com/episodes/368-miniprofiler?view=asciicast
Bạn có thể sử dụng rack-mini-profiler để thêm một huy hiệu nhỏ vào đầu trang hiển thị tất cả chi tiết tốc độ hiển thị.
Tất cả đều ở đây, bạn muốn gì hơn? – shingara
Tôi nghĩ rằng anh ấy có nghĩa là hiển thị thời gian trong chế độ xem khi bạn xem nó trong trình duyệt .. không phải từ nhật ký – johnmcaliley