如何将大型gem转换为独立的rails应用程序

我正在建立一个社交网络并且一直在使用gem community_engine但是在实现我的应用程序所需的大量自定义时遇到了麻烦。 我认为这将使我更容易覆盖和添加方法,并帮助我更好地理解和学习代码,因为我将能够实际看到所有这些在行动中。

到目前为止,在我的尝试中,我下载了源代码,添加了缺少的默认bin目录和配置文件,以及所有gem依赖项。

我还需要做些什么来让应用程序运行? 我意识到可能还有很多,而且可能不容易解释,但至少有没有任何类型的文档可以帮助我理解如何将gem转换为Rails应用程序?

inheritance了community_engine回购: https : //github.com/bborn/communityengine

因为这个想法可能引起一些批评,我会补充说我最初构建的应用程序没有任何巨大的插件接受设计但是我没时间完成这个。

我尝试过的更多东西:

将文件移动到一个新的rails应用程序,让服务器运行,但遇到了许多看似随机的错误,修复了一些但更多似乎弹出我无法弄清楚:

我还看了http://guides.rubyonrails.org/plugins.html,但这个gem似乎超越了这一点。

我建议您克隆gem并开始将gem中的文件复制到新的Rails应用程序中。

引擎gem可能具有与Rails应用程序类似的结构,因此您应该能够将文件从相应的文件夹移动到Rails根文件夹中的同一文件夹。

您可能需要将gem文件移出模块,更改名称空间等。查看您要包含的文件的相关文件夹可能包括app / config / db /,Gemfile或gemspec文件中的任何gem依赖项,以及spec /或测试/。

除此之外,我认为对你的问题没有灵丹妙药的答案,你只需要解决问题,直到你完成并运行,如果遇到一个你没有超越的障碍,可能会提出后续问题。

我认为你正在寻找的是一种将Rails引擎挂钩到rails应用程序的方法。 “ Rails入门入门指南 ”中的“ 钩入应用程序”部分应该是您正在寻找的内容。

以下是Rails Engines上的两个额外资源。

Rails引擎在野外引导

Rails :: Engine – Ruby on Rails API