現在、機能をエンジンに移す実験を行っています。これまでのところ問題なく動作していますが、何かが変更されたときにエンジンの特定の部分が常に自動的にリロードされ、そうでない部分があるのはなぜなのか、少し混乱しています。
具体的には、ヘルパー メソッドを追加するときに、Rails サーバーを再起動する必要があります。そうしないと、Rails から認識されません。これは正常な動作ですか?私のエンジンの関連部分は次のとおりです。
components/iq_list.rb
# encoding: utf-8
require 'iq_list/engine'
# Load IqList Modules
module IqList
extend ActiveSupport::Autoload
autoload :Helpers
autoload :Models
autoload :Controllers
end
コンポーネント/iq_list/engine.rb
module IqList
class Engine < ::Rails::Engine
end
end
コンポーネント/iq_list/helpers.rb
module IqList
module Helpers
extend ActiveSupport::Autoload
autoload :IqListHelper
end
end
components/iq_list/helpers/iq_list_helper.rb
module IqList
module Helpers
module IqListHelper
def some_method
# ...
end
end
end
end
私はまだエンジンに非常に慣れていないので、上記のコードの多くは他の人の仕事から取ったものなので、しばらくお待ちください。正しい方向へのヒントは高く評価されます。