2010-01-19 32 views
6

Tôi là người mới trong Ruby On Rails, Ai đó có thể cho tôi biết cách làm mới trang.Tự động Làm mới trang trong Ruby on Rails

  1. Nếu không có bất kỳ giá trị nộp
  2. Với giá trị trước đó nộp
+1

Khi bạn nói "làm mới", nghĩa là trang sẽ tự động tự động làm mới sau mỗi phút "n" hoặc có kiểm soát (ví dụ: nút) mà người dùng sẽ kích hoạt để làm mới trang không? – BryanH

+0

nó sẽ tự động làm mới – markiv

Trả lời

7

ActionView::Helpers::PrototypeHelper#periodically_call_remote:

  1. Nếu không có bất kỳ giá trị nộp

    <%= periodically_call_remote(:url => {}) %> 
    
  2. Với giá trị trước đó gửi lại:

    <%= periodically_call_remote(:url => params) %> 
    

Bạn có thể cung cấp một: Tùy chọn tần số để xác định mức độ thường xuyên để gọi nó.

Bạn cũng có thể muốn thiết lập khối format.js trong bộ điều khiển để hiển thị mẫu RJS sẽ chỉ cập nhật những thứ có thể thay đổi.

Edit: Cách tiếp cận này đã bị phản đối với phiên bản Rails 3.0

Câu hỏi này (Rails 3 equivalent for periodically_call_remote) cung cấp một phương pháp để đạt được điều này trong các phiên bản mới hơn của Ruby on Rails.

+0

Liên kết của bạn dường như bị hỏng. – Bach

+0

Không bị hỏng, không được chấp nhận. Tôi đã cập nhật liên kết để trỏ đến tài liệu về phiên bản mới nhất của đường ray được hỗ trợ, tôi cũng đã thêm liên kết để trả lời cung cấp phương pháp hoàn thành trong phiên bản mới hơn của Rails. – EmFi

0

Bạn cũng có thể sử dụng tập lệnh bên dưới để tự động làm mới toàn bộ trang ...

setTimeout ("location.reload();", 10000);
+0

ngôn ngữ kịch bản = "javascript" type = "text/javascript – abcreddy