如何在`<root_app> / lib`目录中实现MVC架构?</root_app>

时间:2012-08-14 02:24:26

标签: ruby-on-rails ruby ruby-on-rails-3 model-view-controller directory

我正在使用Ruby on Rails 3.2.2。在<ROOT_APP>/lib/my_plugin目录中,我开发了一个“插件”,现在我正在考虑:

  • <ROOT_APP>/lib/my_plugin目录中实现MCV(模型 - 控制 - 视图)架构;
  • 使我的应用程序(如果需要)可以使用这些相关的控制器,助手等。

有可能做到吗?如果是这样,怎么样?你有什么建议?

2 个答案:

答案 0 :(得分:2)

如果需要控制器,模型和视图,则应考虑制作可安装的应用程序。 Devise是一个很好的宝石,可以看一下如何做到这一点。它比在lib中复制Rails应用程序的整个结构要简单得多。

答案 1 :(得分:1)

我建议,与jbarket一起,不要在你的应用程序中构建你的插件。相反,将其构建为引擎(在this guide about engines之后)并将其作为应用程序所依赖的单独实体进行维护Gemfile.