2013-11-24 8 views
7

私はRailsの4.1.0マウントエンジンを持っています。エンジンのapplication_helper.rbで:Railsエンジンの変更を自動リロードする方法は?

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

方法は、ダミーのアプリのビューgeneral/index.html.erbビューである:

%<= test123 %> 

これは動作します。しかし、私はdef test123によって返される文字列を変更して、ブラウザを更新すると、新しい文字列が表示されません。もちろん

、ダミーアプリでWebサーバーを再起動すると新しい文字列を示します。

そこで問題は、Webサーバーを再起動することなく、エンジンのファイルをリロードする方法、ありますか?

PS。私は、好ましくは、レール自体、または特定のこの問題を解決宝石使ってこれを行う方法を探しています(他のすべてが失敗した場合、私はあまりにもそれらを検討しますが、ではないなどのガード、先割れスプーンのような一般的な宝石を。)

PPS。そこSO上で同様の質問がありますが、私は(彼らはRailsの2.xの、3.xのためであっても)、それらすべてを試してみましたが、彼らは私のために働いていません。

答えて

0

zeusのようなものを使うことができます。これは、設定ファイルを変更して手動で再起動する必要がある場合を除いて、プロジェクトファイルの変更を監視するのに役立ちます。

が、全体的に、ほとんどの場合、これは素晴らしい

2

以上の作品あなたが明示的に依存するヘルパーを必要とする必要があります

# 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 
    ... 
関連する問題