これは実験用です - --full でこれを行うことができることは承知していますが、競合を避けるためにアプリの名前空間の機能が必要でした
アイデアは、認証、共通アイテム、管理画面などを処理するメインアプリを持つことです。次に、エンジンを作成して、次のような機能を追加します。
- クロム
- cms
- ブログ
- ウィキ
- フォーラム
- 等
これらのエンジンは、作成しているアプリの種類に応じて、必要に応じて選択できます。これは可能ですか?
--mountable と --full の両方のオプションを適用しただけですか?
実験中 - 完全なオプション add rspec を使用してから単純な追加を行った場合、問題は発生しますか?
rails plugin new plugin_name --skip-test-unit --full --dummy-path=spec/dummy
および lib\plugin_name\engine.rb 内
module PluginName
class Engine < Rails::Engine
# this is added by rails when an engine is mountable
# to isolate the plugin and prevent name clashes
isolate_namespace PluginName
# one of the additions to make rspec work from command line for the plugin
config.generators do |g|
g.test_framework :rspec, :view_specs => false
end
end
end
私はすでに --full と --mountable の両方のエンジンを作成しており、いくつかの素晴らしい記事 (以下を参照) を読んでいる人のために最終的に機能する rspec を持っていますが、私が作成しようとしているソリューションに対してこれを行うことのより広い影響について疑問に思いました
私はまだこれで遊んでおり、調査結果を投稿します..
ヘルプ/ディスカッションは大歓迎です。
ご注意ください
- なぜ私はそれをやりたいのか - 一度ビルドして何度も使用する...
- 非技術者/クライアントが「プラグイン/エンジン」を追加することは決して望んでいません-これは純粋にポイント1を楽しませるためです.
私が抱えている問題...
- 最上位アプリでサーバーを実行します。エンジンからコンテンツにアクセスする場合のみ (エラー メッセージで確認できます) ルーティングに問題があります (root_path が定義されていないか、ルートが見つからない) - 親アプリケーションのレイアウトがレンダリングされています。抽出されたエラーのソースで確認できます。 . 進行中ですが、葉巻はまだありません!
参考文献