2013-01-03 83 views
3

我有一个在RoR开发的“核心”项目。问题是有几个独立的项目,它们具有这个“核心”,因为它们基于代码,然后它们可能具有新的功能或视图,助手,控制器等的更改。我希望“核心”中的任何更改都可以跟踪这些其他项目。因此,“核心”中的任何变化都会在其他项目上被复制或不复制。我一直在思考“核心”项目,但是由于其他项目的不断变化,这不是最好的解决方案(也是一个漫长的过程)。那就是我所想的。其他的解决方案是将一些重要的代码分离成模块。然后我可以在想要使用它们的项目中导入这些新功能。在RoR中重用项目的最佳方式是什么?

“核心”项目是一个纯粹的MVC ruby​​ on rails项目。

你对这个问题有何建议?

在此先感谢。

+4

一个好的答案需要更多地了解'核心'是由什么组成的。你能给出更多关于共享代码类型的细节吗? – PinnyM

+0

“核心”项目是一个纯粹的MVC Ruby on Rails项目。 – Dagosi

+0

然后你就完成了 - Rails是你的核心项目。或者我错过了什么? – PinnyM

回答

6

我们有大约一百个Rails站点,每个站点都包含在它们中的一个核心引擎中。相关网站组也使用辅助引擎宝石。见Rails Engines

+0

这看起来棒极了@Mori。感谢您的推荐。我有另一个问题。你知道一个简单的方法将正常的RoR项目迁移到引擎解决方案吗? – Dagosi

+0

@Dagosi,看到[这个问题](http://stackoverflow.com/questions/6470430/how-do-i-convert-an-existing-rails-3-application-into-an-engine)。 – Mori

+0

非常感谢你! – Dagosi

相关问题