2013-11-24 16 views
7

Tôi có một công cụ gắn kết Rails 4.1.0. Trong application_helper.rb của động cơ:Làm cách nào để tự động tải lại các thay đổi trong Rails Engine?

module MyEngine 
    module ApplicationHelper  
    def test123 
     "test123" 
    end  
    end 
end 

Phương pháp này là theo quan điểm general/index.html.erb xem ứng dụng giả của:

%<= test123 %> 

này hoạt động. Tuy nhiên, khi tôi thay đổi chuỗi trả về bằng def test123 và làm mới trình duyệt, chuỗi mới sẽ không được hiển thị.

Tất nhiên, khởi động lại máy chủ web trong ứng dụng giả sẽ hiển thị chuỗi mới.

Vì vậy, câu hỏi đặt ra là làm cách nào để tải lại tệp của máy mà không phải khởi động lại máy chủ web?

PS. Tôi tốt nhất là tìm cách để làm điều này bằng cách sử dụng Rails, hoặc một viên ngọc cụ thể giải quyết vấn đề này (nhưng không phải là đá quý chung như Guard, Spork, vv .. mặc dù nếu thất bại, tôi cũng sẽ xem xét chúng.)

PPS. Có những câu hỏi tương tự về SO, nhưng tôi đã thử tất cả chúng (mặc dù chúng dành cho Rails 2.x, 3.x), và chúng chưa hoạt động đối với tôi.

Trả lời

0

bạn có thể sử dụng một số thứ như zeus đang giúp ích rất nhiều trong việc xem tệp dự án để thay đổi ngoại trừ một số trường hợp khi bạn thay đổi tệp cấu hình không hoạt động và cần phải khởi động lại theo cách thủ công.

nhưng tổng thể trong nhiều trường hợp công trình này tuyệt vời hơn

2

Bạn nên yêu cầu một cách rõ ràng những người giúp đỡ phụ thuộc:

# engines/my_engine/app/controllers/my_engine/application_controller.rb 

require_dependency "my_engine/application_helper" # This is a key point! 

module MyEngine 
    class ApplicationController < ::ApplicationController 
    helper ApplicationHelper 
    ... 
Các vấn đề liên quan