ruby-on-rails – 如何将rails应用程序转换为gem?

我在rails应用程序上有一个需要宝石的ruby.珠宝商,帮助创建基本的rubygems.但是,如何将rails应用程序打包为gem?我有一个主应用程序,需要我的rails应用程序作为宝石.我无法集成它们,因为主要的rails应用程序将用作管理应用程序来控制较小的应用程序,在其中作为宝石/引擎运行.
最佳答案
从Rails 3.0开始,任何Rails应用程序都是引擎.要将您的应用程序包装到gem中,您应该:

>使用捆绑器或珠宝商或其他东西创建新的宝石.
>将您的应用程序代码插入gem的lib /目录.
>您的应用的所有类都应该在MyGem模块中,因此在您的类名之前添加MyGem,例如:Article => MyGem ::文章.所有控制器,模型等都应使用模块GemName命名空间.
>您的文件lib / my_gem.rb应包含下一个代码:

module MyGem
  class Engine < Rails::Engine; end
end

UPD

或者如果你将使用可安装的引擎更好:

$rails plugin new MyGem

它生成可安装的引擎,带有用于测试和gemspec的虚拟应用程序.

转载注明原文:ruby-on-rails – 如何将rails应用程序转换为gem? - 代码日志