我正在尝试理解Rails3插件的初始化过程。我有一个插件包装成一个宝石,我包括在我的Gemfile为我的项目。
反过来,gem在其gemspec中指定它依赖于Sunspot::Rails。gem本身被拉入,我可以访问它的类,但是看起来railtie初始化代码并没有运行。
但是,如果我直接在项目的sunspot_rails的Gemfile中添加一行,则会运行初始化代码。
有没有人知道一种方法,可以让我的gem/plugin在依赖项中运行初始化代码,而不必将它们全部直接包含在我的项目中?
提前谢谢。
发布于 2011-11-23 23:30:52
在阅读了the above article and responses之后,我意识到我需要的是sunspot/rails而不是sunspot_rails。有必要要求sunspot_rails,因为这反过来需要栏杆(在gemspec中列出gem时不会自动要求栏杆)。
Here is a link to a very good article谈到了gemspec和Gemfile之间的区别,这有助于解释这一切。
https://stackoverflow.com/questions/8214020
复制相似问题