現在、Ruby 1.9.3、Rails 3.1を使用しています(すべてのアプリケーションをアップグレードするために努力しています)。Rails 3.1開発環境でモデルをリロードしたときにイニシャライザが実行されない
モジュールを使用しています(これを 'OurModule'と呼びましょう)メソッドを追加します(これは 'OurAddOnMethod'をgemModelという名前のモデルに定義します) 「設定/初期化子」ディレクトリに住むファイル
ファイルはモジュールを定義して、モデルに含めるために、これを呼び出します。開発するとき
# Include the extension
GemModel.send(:include, OurModule)
、物事はほとんどがうまく動作しますが、定期的に我々基本的に「GemModelの未定義メソッド 'OurAddOnMethod'」というエラーが発生します。サーバーを再起動すると問題が解決します(しばらく)
モデルが開発環境の変更に伴って定期的にリロードされ、初期化子がその時にリロードされないように見えるため、これが起こっていると思われます。これは、これを設定する最善の方法ではないようです。それに対処するのはかなりイライラします。
これを達成するために誰かがより良い方法で私を啓発することはできますか?