Rails可重复使用的Web组件设计

时间:2012-01-12 18:49:11

标签: ruby-on-rails design-patterns code-reuse

在我完成这一年的过程中,开发rails已经变得非常有趣,但现在我需要构建可重用的网站组件,例如网上商店,内容管理,媒体管理等。

我们希望为即将到来的客户减少时间和成本,我们可以花一点时间来构建这些东西。

所以我想要构建的是一个CMS,我可以在一个项目中放入一个只有一个文件夹和一行或两行代码来初始化CMS并告诉它使用什么和不使用什么。因此,在此之后,我们只需要创建控制器以获取正确的内容和视图,以显示客户端随CMS添加的内容。

我看过Devise,它看起来很棒,但是对于我的需求来说,宝石感觉有点复杂。我宁愿将该文件夹存储在我们的本地网络中,因此我们可以将其放入项目中并进行安装。

问题是:在哪里可以将单个文件夹与控制器,帮助程序,模型,视图和具有设置迁移路径的功能的文件放在一起?

我的猜测是lib文件夹,但我不确定如何实现项目中的所有内容。我一直在寻找设计模式,但我不确定在哪里搜索。

我需要的是gem的可重用性,但是存储在我的本地网络中的单个文件夹中。

希望有人能指出我正确的方向。

由于

1 个答案:

答案 0 :(得分:0)

正如Shreyas Satish所说,我应该使用发动机。

经过一番搜索,我发现了这个很棒的教程:

http://www.builtfromsource.com/2010/12/13/mountable-engines-in-rails-3-1-beta-getting-started/

希望它可以帮助有同样问题的人。