一度に組み合わせてマウントされる複数のエンジンで構成される Rails アプリがあります。アプリの B2B 側には 1 つのエンジンがあり、デバイス認証用に別の「ユーザー」モデル (会社のような) があります。同様に、独自の認証モデルを持つエンド カスタマー向けのものもあります (例: 会社のユーザー)。同様に、ルート レベルの管理用に ActiveAdmin を使用して実装されるサイト管理者用の別のエンジンがあります。
いくつかの組み合わせで、同時に 1 つ、2 つ、または 3 つのエンジンを搭載することがあります。問題は、それぞれに異なる親アプリケーションコントローラーがあり、それぞれに異なるルーターがあることです。何かのようなもの:
devise.rb
-- エンジン1
config.router_name = :engine1
config.parent_controller = 'Engine1::ApplicationController'
devise.rb
-- エンジン 2
config.router_name = :engine2
config.parent_controller = 'Engine2::ApplicationController'
しかし、もちろん、複数の競合する構成ファイルを持つことはできません。
このようなものを工夫して実装する方法について助けが必要です。