2009-01-13 88 views
6

通常我創建一個插件,當我有一個模塊時,我知道我將在其他項目中再次需要,但是,它們也可以打包爲寶石。建立一個插件或寶石?

什麼時候應該創建一個創建插件的寶石?有沒有任何準備打電話的標準?

回答

9

插件,現在正在變得過時,你可以通過在environment.rb中的「config.gem」語句管理的寶石。寶石可用於全系統(不只在一個應用程序中),並且與插件不同。

我最近轉換我的所有plugins到寶石。 Easy to do,非常值得。

+0

「易·幹」的鏈接改爲http://mbleigh.com/2008/06/11/gemplugins-a-簡要介紹到的,未來的護欄,plugins.html – cpm 2009-05-11 18:35:00

1

Rails似乎正朝着寶石方向發展。我已將大部分插件轉換爲寶石。寶石在Ruby生態系統中更易於管理和適應。爲什麼我們需要兩個獨立的系統呢?

仍然存在但與寶石的一個問題:這是不可能的耙任務添加到從創業板的Rails應用程序。雖然我不確定,但發電機可能也是如此。如果你在你的插件中使用這些,那麼遷移到寶石是不可能的。希望這會很快得到解決。

1

您可以通過寶石添加發電機到導軌。這實際上很簡單,你可以添加一個rails_generators目錄到你的gem。 (我認爲其他目錄名稱將工作 - 我不知道什麼軌搜索)。例如:http://github.com/remi/rackbox/tree/a21c21667c68d5fd51357e28f0742171e9161e9b/rails_generators

與添加rake任務...我還沒有搞清楚HOWTO做到這一點:/

現在,我有我的生成增加require 'myproject/rails/tasks'(或東西)到項目的Rake文件作爲一種將rake任務添加到來自gem的rails的方法。

很多寶石都要求你'引導'它們到你的rails項目中,例如。 sudo的創業板安裝黃瓜 CD rails_app ./script/generate黃瓜#引導黃瓜放入您的應用程序