プラグインまたはGemを構築しますか?
-
22-07-2019 - |
質問
通常、他のプロジェクトで再度必要になることがわかっているモジュールがある場合、プラグインを作成しますが、gemとしてパッケージ化することもできます。
プラグインの作成よりもいつgemを作成する必要がありますか?電話をかけるための基準はありますか?
他のヒント
レールは宝石の方向に向かっているようです。プラグインのほとんどをgemに変換しました。宝石は管理が容易で、Rubyエコシステムによりよく適合します。とにかく2つの別個のシステムが必要なのはなぜですか?
gemにはまだ問題があります。gemからRailsアプリケーションにrakeタスクを追加することはできません。おそらく同じことがジェネレーターにも当てはまりますが、わかりません。プラグインでこれらを使用する場合、gemへの移行はまだできません。うまくいけば、これはすぐに修正されます。
gemsを介してジェネレーターをレールに追加できます。実際には非常に簡単です。rails_generatorsディレクトリをgemに追加するだけです。 (他のディレクトリ名が機能すると思います-どのレールが検索するのかわかりません)。例: http://github.com/remi/rackbox/tree/a21c21667c68d5fd51357e28f0742171e9161e9b/rails_generators
rakeタスクの追加に関しては...まだその方法を理解していない:/
今のところ、gemからrailsにrakeタスクを追加する方法として、プロジェクトのRakefileに require 'myproject / rails / tasks'
(または何か)をジェネレーターに追加させています。
多くのgemは、あなたのRailsプロジェクトにそれらを「ブートストラップ」するように頼みます。 sudo gem install cucumber cd rails_app ./script/generate cucumber#アプリにキュウリをブートストラップします