Railtie Initializerプラグインで実行されていません
-
30-10-2019 - |
質問
私は最近、gemバージョンから切り替えました resources_controller
に plugin
として gem
バージョンに依存しています git
.
内側 vendor/plugins/plugin/lib/plugin.rb
ファイル、 Railtie
以下のとおりであります:
module Ardes
module ResourcesController
class Railtie < Rails::Railtie
initializer 'ardes.resources_controller' do
ActiveSupport.on_load(:action_controller) do
extend Ardes::ResourcesController
include Ardes::ResourcesController::RequestPathIntrospection
end
ActiveSupport.on_load(:active_record) do
include Ardes::ActiveRecord::Saved
end
end
end
end
end
私は追加しました require 'resources_controller'
初期剤の1つで、このファイルを適切に読み込んでいます。問題は、 Railtie
評価されます(a puts
クラスブロックがヒットします)、実際に初期イザーブロック自体を呼び出すことはありません。もちろん、これは重要です。 ActionController
を含める resources_controller_for
方法。
この質問は出てきたようです ここ と ここ. 。どちらの場合も、彼らは問題の周りに他の方法を見つけ、ブロックが呼び出されなかった理由について直接的な答えは与えられませんでした。
Rails Docsで私が伝えることができることから、あなたが希望するものをすべて名前にすることができ、それは実行されるべきです。私はそれが重要だとは思わないが、私は最初に生産で実行されたときに問題に気づいた rails s -e production
私は同じ問題が開発モードに存在すると信じていますが。
何が起こっているのでしょうか?
参照のために、完全なプラグインはこちらにあります: https://github.com/ianwhite/resources_controller
正しい解決策はありません
所属していません StackOverflow